home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 June / EnigmA AMIGA RUN 08 (1996)(G.R. Edizioni)(IT)[!][issue 1996-06][EARSAN CD VII].iso / earcd / utmisc1 / st4amiga.lha / ST / emu.asm < prev    next >
Assembly Source File  |  1996-05-13  |  44KB  |  2,867 lines

  1.  
  2. dsksync    EQU    $7E
  3. bltbpth    EQU    $4C
  4. bpl2pth    EQU    $E4
  5. bpl2ptl    EQU    $E6
  6. bpl3pth    EQU    $E8
  7. potgo    EQU    $34
  8. adkcon    EQU    $9E
  9. bpl3ptl    EQU    $EA
  10. color0    EQU    $180
  11. color1    EQU    $182
  12. color2    EQU    $184
  13. color3    EQU    $186
  14. _custom    EQU    $DFF000
  15. ddfstop    EQU    $94
  16. bltapth    EQU    $50
  17. bltcon0    EQU    $40
  18. bpl1pth    EQU    $E0
  19. bltcon1    EQU    $42
  20. diwstrt    EQU    $8E
  21. intreq    EQU    $9C
  22. bplcon0    EQU    $100
  23. bplcon1    EQU    $102
  24. bpl1ptl    EQU    $E2
  25. foreground    EQU    $888
  26. cop1lcl    EQU    $82
  27. dskpth    EQU    $20
  28. cop1lch    EQU    $80
  29. diwstop    EQU    $90
  30. ddfstrt    EQU    $92
  31. bltdpth    EQU    $54
  32. bpl4pth    EQU    $EC
  33. bpl4ptl    EQU    $EE
  34. intena    EQU    $9A
  35. sync    EQU    $4489
  36. rtc    EQU    io+$7C21
  37. bltafwm    EQU    $44
  38. intreqr    EQU    $1E
  39. joy0dat    EQU    $A
  40. tv_Lev4IntVect    EQU    $70
  41. bltbmod    EQU    $62
  42. bpl2mod    EQU    $10A
  43. potinp    EQU    $16
  44. bltamod    EQU    $64
  45. bpl1mod    EQU    $108
  46. vhposr    EQU    $6
  47. gap4    EQU    $4E4E4E4E
  48. bltalwm    EQU    $46
  49. dmacon    EQU    $96
  50. gap2    EQU    $4E4E
  51. bltcdat    EQU    $70
  52. timeout    EQU    $7A120
  53. tv_PrivilegeViolation    EQU    $20
  54. dsklen    EQU    $24
  55. MEMF_CHIP    EQU    $2
  56. MemList    EQU    $142
  57. bltsize    EQU    $58
  58. MaxExtMem    EQU    $4E
  59. bltdmod    EQU    $66
  60. **********************************************************************
  61.     org    emu
  62. lbC000000    BRA    Warmstart
  63.  
  64.     LEA    io,A0
  65.     MOVE.L    #$1FFF,D0
  66. lbC000010    CLR.L    (A0)+
  67.     DBRA    D0,lbC000010
  68.  
  69.     MOVE.B    #2,io+$260
  70.     MOVE.B    #0,io+$7A01    ; MFP
  71.     LEA    $3FF00,A0
  72.     MOVEQ    #$7F,D0
  73. lbC00002E    CLR.W    (A0)+
  74.     DBRA    D0,lbC00002E
  75.  
  76.     MOVE.B    #0,rtc
  77.     MOVE.B    #0,rtc+2
  78.     MOVE.B    #9,rtc+4
  79.     MOVE.B    #3,rtc+6
  80.     MOVE.B    #5,rtc+8
  81.     MOVE.B    #1,rtc+10
  82.     MOVE.B    #6,rtc+14
  83.     MOVE.B    #1,rtc+16
  84.     MOVE.B    #6,rtc+18
  85.     MOVE.B    #0,rtc+20
  86.     MOVE.B    #10,rtc+22
  87.     MOVE.B    #0,rtc+24
  88.     LEA    CODXOFTHEBRAI.MSG,A0
  89.     MOVE.L    0.w,D0
  90.     CMP.L    (A0),D0
  91. *    BNE    Deadend
  92. *    LEA    rom,A0
  93. *    LEA    rom+romsize,A1
  94. *lbC0000B0    MOVE.L    A0,D0
  95. *    EOR.L    D0,(A0)+
  96. *    CMP.L    A0,A1
  97. *    BNE.S    *lbC0000B0
  98. Warmstart    CLR.B    $3FF3A
  99.     MOVE.W    #0,D0
  100.     BSR    lbC00064E
  101.     LEA    _custom,A0
  102.     MOVE.W    #$7FF,dmacon(A0)
  103.     MOVE.W    #$7FFF,intena(A0)
  104.     MOVE.W    #$3FFF,intreq(A0)
  105.     MOVE.L    #lbC0000EA,tv_PrivilegeViolation
  106. lbC0000EA    MOVE    #$2700,SR
  107. *    NOP
  108. *    NOP
  109. *    NOP
  110. *    NOP
  111. *    NOP
  112. *    NOP
  113. *    NOP
  114. *    NOP
  115. *    NOP
  116. *    NOP
  117. *    NOP
  118. *    NOP
  119. *    NOP
  120. *    NOP
  121.     MOVE.W    #$FFFF,temp1
  122.     CLR.W    $3FF0A
  123. *    MOVE.L    #FLOPRD,$4100C
  124. lbC000122    SUB.L    A5,A5
  125.     CMP.L    #$31415926,$426(A5)
  126.     BNE.S    lbC000146
  127.     MOVE.L    $42A(A5),D0
  128.     TST.B    $42A(A5)
  129.     BNE.S    lbC000146
  130.     BTST    #0,D0
  131.     BNE.S    lbC000146
  132.     MOVE.L    D0,A0
  133.     LEA    lbC000122(PC),A6
  134.     JMP    (A0)
  135.  
  136. lbC000146    MOVE.W    #7,$484
  137.     MOVE.W    #$F02,$E82
  138.     MOVE.B    #1,io+$201
  139.     MOVE.B    #0,io+$203
  140.     TST.L    $3FF00
  141.     BNE    lbC000276
  142.     MOVE.L    4,A6
  143.     MOVE.L    MemList(A6),A6
  144. lbC00017A    BTST    #MEMF_CHIP,15(A6)
  145.     BEQ.S    lbC0001AE
  146.     CMP.L    #$C00000,$14(A6)
  147.     BGE.S    lbC0001AE
  148.     MOVE.L    $14(A6),D0
  149.     AND.L    #$FFFF0000,D0
  150.     MOVE.L    D0,$3FF00
  151.     MOVE.L    $18(A6),D0
  152.     MOVE.L    D0,$3FF04
  153.     BSR    lbC000256
  154.     BRA    lbC000276
  155.  
  156. lbC0001AE    TST.L    (A6)
  157.     MOVE.L    0(A6),A6
  158.     BNE.S    lbC00017A
  159.     MOVE.L    4,A6
  160.     TST.L    MaxExtMem(A6)
  161.     BEQ.S    lbC0001FA
  162.     MOVE.L    MaxExtMem(A6),A6
  163.     MOVE.L    #$C00000,$3FF00
  164.     MOVE.L    A6,$3FF04
  165.     BRA    lbC000276
  166.  
  167. CODXOFTHEBRAI.MSG    dc.b    'CODX OF THE BRAINS HAS DONE IT !'
  168.  
  169. lbC0001FA    CLR.W    $FC0000
  170.     TST.W    $FC0000
  171.     BNE.S    lbC000226
  172.     MOVE.L    #$FC0000,$3FF00
  173.     MOVE.L    #$1000000,$3FF04
  174.     BSR.S    lbC000256
  175.     BRA.S    lbC000276
  176.  
  177. lbC000226    LEA    $80000,A0
  178.     CMP.L    #'CODX',(A0)
  179.     BEQ.S    lbC000252
  180.     MOVE.L    #$80000,$3FF00
  181.     MOVE.L    #$100000,$3FF04
  182.     BSR.S    lbC000256
  183.     BRA.S    lbC000276
  184.  
  185. lbC000252    BRA.S    Deadend
  186.  
  187. lbC000256    MOVE.L    $3FF00,A0
  188.     MOVE.L    #$1000,D0
  189. lbC000262    CLR.L    (A0)+
  190.     DBRA    D0,lbC000262
  191.  
  192.     RTS
  193.  
  194. Deadend    MOVE.W    _custom+vhposr,_custom+color0
  195.     BRA.S    Deadend
  196.  
  197. lbC000276    LEA    lbC000280(PC),A6
  198.     JMP    patch2
  199.  
  200. lbC000280    BEQ.S    lbC0002F6
  201.     SUB.L    A5,A5
  202.     MOVE.L    #scr+scrsize,A0
  203.     MOVE.L    #scr-scrsize,D4
  204.     MOVEQ    #0,D0
  205.     MOVEQ    #0,D1
  206.     MOVEQ    #0,D2
  207.     MOVEQ    #0,D3
  208. lbC00029A    MOVEM.L    D0-D3,-(A0)
  209.     MOVEM.L    D0-D3,-(A0)
  210.     MOVEM.L    D0-D3,-(A0)
  211.     MOVEM.L    D0-D3,-(A0)
  212.     CMP.L    D4,A0
  213.     BNE.S    lbC00029A
  214.     MOVE.L    #$18000,A0
  215.     MOVE.L    #$400,D4
  216.     MOVEQ    #0,D0
  217.     MOVEQ    #0,D1
  218.     MOVEQ    #0,D2
  219.     MOVEQ    #0,D3
  220. lbC0002C2    MOVEM.L    D0-D3,-(A0)
  221.     MOVEM.L    D0-D3,-(A0)
  222.     MOVEM.L    D0-D3,-(A0)
  223.     MOVEM.L    D0-D3,-(A0)
  224.     CMP.L    D4,A0
  225.     BNE.S    lbC0002C2
  226.     MOVE.L    $3FF04,$42E(A5)
  227.     MOVE.L    #$752019F3,$420(A5)
  228.     MOVE.L    #$237698AA,$43A(A5)
  229.     MOVE.L    #$5555AAAA,$51A(A5)
  230. lbC0002F6    MOVE.L    #scr,A0
  231.     MOVE.L    #scr-scrsize,D4
  232.     MOVEQ    #-$1,D0
  233. lbC000304    MOVE.L    D0,-(A0)
  234.     CMP.L    D4,A0
  235.     BNE.S    lbC000304
  236.     BSR    Corners
  237.     SUB.L    A5,A5
  238.     MOVE.L    #$980,A0
  239.     MOVE.L    #$10000,A1
  240.     MOVEQ    #0,D0
  241. lbC00031E    MOVE.W    D0,(A0)+
  242.     CMP.L    A0,A1
  243.     BNE.S    lbC00031E
  244.     MOVE.L    $42E,A0
  245.     SUB.L    #$8000,A0
  246.     CMP.B    #2,io+$260
  247.     BLT.S    lbC000340
  248.     LEA    scr,A0
  249. lbC000340    MOVE.L    A0,$44E(A5)
  250.     MOVE.B    $44F(A5),io+$201
  251.     MOVE.B    $450(A5),io+$203
  252.     MOVE.W    #$7FF,D1
  253. lbC000358    MOVE.L    D0,(A0)+
  254.     MOVE.L    D0,(A0)+
  255.     MOVE.L    D0,(A0)+
  256.     MOVE.L    D0,(A0)+
  257.     DBRA    D1,lbC000358
  258.  
  259.     MOVE.W    #$FFF,D0
  260.     MOVE.L    rom+$14,A0
  261.     CMP.L    #$87654321,(A0)
  262.     BEQ.S    lbC00037C
  263.     LEA    rom+$8,A0
  264. lbC00037C    MOVE.L    4(A0),$4FA
  265.     MOVE.L    8(A0),$4FE
  266.     LEA    lbC0003A4(PC),A6
  267.     CMP.B    #1,io+$260
  268.     BLT    lbC00068E
  269.     BEQ    lbC000704
  270.     BGT    lbC00076A
  271. lbC0003A4    MOVE.L    #$3FFB0,$80(A0)
  272.     TST.W    $88(A0)
  273. lbC0003B0    BSR    lbC000668
  274.     TST.W    4(A0)
  275.     BPL.S    lbC0003B0
  276.     MOVE.W    #$83C0,$96(A0)
  277.     MOVE.L    #lbC00111C,$46A(A5)
  278.     MOVE.L    #lbC001174,$476(A5)
  279.     MOVE.L    #patch3,$472(A5)
  280.     MOVE.L    #lbC001294,$47E(A5)
  281.     MOVE.L    #lbC0012C0,$47A(A5)
  282.     MOVE.L    #lbC000FC4,$506(A5)
  283.     MOVE.L    #lbC000F82,$50A(A5)
  284.     MOVE.L    #lbC001116,$50E(A5)
  285.     MOVE.L    #lbC001116,$512(A5)
  286.     MOVE.L    #patch4,$502(A5)
  287.     MOVE.L    $3FF04,$436(A5)
  288.     MOVE.L    $3FF00,$432(A5)
  289.     LEA    $755A,SP
  290.     MOVE.W    #8,$454(A5)
  291.     ST     $444(A5)
  292.     MOVE.W    #3,$440(A5)
  293.     MOVE.L    #$16DA,$4C6(A5)
  294.     MOVE.W    #$FFFF,$4EE(A5)
  295.     MOVE.L    #rom,$4F2(A5)
  296.     MOVE.L    #$93A,$4A2(A5)
  297.     MOVE.L    #patch5,$46E(A5)
  298.     MOVE.W    #$FFF,D0
  299.     JSR    patch6
  300.     LEA    patch7,A3
  301.     LEA    patch5,A4
  302.     LEA    patch8,A1
  303.     ADD.L    #$2000000,A1
  304.     LEA    8,A0
  305.     MOVE.W    #$3D,D0
  306. lbC000488    MOVE.L    A1,(A0)+
  307.     ADD.L    #$1000000,A1
  308.     DBRA    D0,lbC000488
  309.  
  310.     MOVE.L    A3,$14
  311.     MOVEQ    #6,D0
  312.     LEA    $64(A5),A1
  313. lbC0004A0    MOVE.L    #patch7,(A1)+
  314.     DBRA    D0,lbC0004A0
  315.  
  316.     MOVE.L    #patch9,$70(A5)
  317.     MOVE.L    #lbC00081A,$6C(A5)
  318.     MOVE.L    #lbC000ADE,$68
  319.     MOVE.W    #$C028,_custom+intena
  320.     MOVE.L    A3,$88(A5)
  321.     MOVE.L    #lbC000D6A,$B4(A5)
  322.     MOVE.L    #lbC000D62,$B8(A5)
  323.     MOVE.L    #patch10,$28(A5)
  324.     MOVE.L    A4,$400(A5)
  325.     MOVE.L    #patch11,$404(A5)
  326.     MOVE.L    A4,$408(A5)
  327.     LEA    $4CE(A5),A0
  328.     MOVE.L    A0,$456(A5)
  329.     MOVE.W    #7,D0
  330. lbC000504    CLR.L    (A0)+
  331.     DBRA    D0,lbC000504
  332.  
  333.     LEA    patch12,A0
  334.     MOVE.W    #$51E,A1
  335.     MOVEQ    #$1F,D0
  336. lbC000516    MOVE.L    (A0)+,(A1)+
  337.     DBRA    D0,lbC000516
  338.  
  339.     MOVE.B    io+$7A01,D0
  340.     MOVE.W    D0,-(SP)
  341.     JSR    patch13
  342.     MOVE.W    (SP)+,D0
  343.     MOVE.B    D0,io+$7A01
  344.     MOVE.L    #$7FFF,D0
  345. lbC000538    JSR    patch14
  346.     DBRA    D0,lbC000538
  347.  
  348.     MOVE.W    #$CCC,D0
  349.     LEA    lbC00054A(PC),A6
  350. lbC00054A    MOVE.B    io+$260,$44C
  351.     MOVEQ    #0,D0
  352.     JSR    patch15
  353.     JSR    patch16
  354.     MOVE.L    #Warmstart,$46E(A5)
  355.     MOVE.W    #1,$452
  356.     MOVE    #$2100,SR
  357.     MOVE.W    #$999,D0
  358.     JSR    patch17
  359.     MOVE.W    rom+$1E,$8840
  360.     JSR    patch18
  361.     JSR    patch19
  362.     JSR    patch20
  363.     TST.W    $482
  364.     BEQ.S    lbC0005C2
  365.     JSR    patch21
  366.     PEA    patch22
  367.     PEA    patch22
  368.     PEA    patch23
  369.     CLR.W    -(SP)
  370.     BRA.S    lbC000636
  371.  
  372. lbC0005C2    JSR    patch21
  373.     MOVE.W    #$666,D0
  374.     MOVE.L    #rom,$4F2
  375.     LEA    patch24,A0
  376.     MOVE.L    #$840,A1
  377. lbC0005E2    CMP.B    #$23,(A0)
  378.     BNE.S    lbC0005EA
  379.     MOVE.L    A1,A2
  380. lbC0005EA    MOVE.B    (A0)+,(A1)+
  381.     BPL.S    lbC0005E2
  382.     MOVE.B    $446,D0
  383.     ADD.B    #$41,D0
  384.     MOVE.B    D0,(A2)
  385.     PEA    $840
  386.     PEA    patch22
  387.     PEA    patch22
  388.     MOVE.W    #5,-(SP)
  389.     MOVE.W    #$4B,-(SP)
  390.     TRAP    #1
  391.     ADD.W    #14,SP
  392.     MOVE.L    D0,A0
  393.     MOVE.L    $4FE,8(A0)
  394.     PEA    $840
  395.     MOVE.L    A0,-(SP)
  396.     PEA    patch22
  397.     MOVE.W    #4,-(SP)
  398. lbC000636    MOVE.W    #$4B,-(SP)
  399.     TRAP    #1
  400.     ADD.W    #14,SP
  401.     MOVEQ    #3,D7
  402.     JSR    patch25
  403.     JMP    Warmstart
  404.  
  405. lbC00064E    MOVE.W    D0,_custom+color0
  406.     MOVE.W    D0,_custom+color1
  407.     MOVE.W    D0,_custom+color2
  408.     MOVE.W    D0,_custom+color3
  409.     RTS
  410.  
  411. lbC000668    MOVE.W    $1E(A0),D0
  412.     BTST    #5,D0
  413.     BEQ.S    lbC000668
  414.     MOVE.W    D0,$9C(A0)
  415.     RTS
  416.  
  417. lbC000678    BTST    #6,$BFE001
  418.     BNE.S    lbC000678
  419. lbC000682    BTST    #6,$BFE001
  420.     BEQ.S    lbC000682
  421.     RTS
  422.  
  423. lbC00068E    LEA    _custom,A0
  424.     MOVE.W    #$4200,bplcon0(A0)
  425.     MOVE.W    #0,bplcon1(A0)
  426.     MOVE.W    #0,bpl1mod(A0)
  427.     MOVE.W    #0,bpl2mod(A0)
  428.     MOVE.W    #$38,ddfstrt(A0)
  429.     MOVE.W    #$D0,ddfstop(A0)
  430.     MOVE.W    #$2C81,diwstrt(A0)
  431.     MOVE.W    #$F4C1,diwstop(A0)
  432.     MOVE.W    #$222,color1(A0)
  433.     LEA    lbW0006E0,A1
  434.     LEA    $3FFB0,A2
  435.     MOVEQ    #$11,D0
  436. lbC0006D8    MOVE.W    (A1)+,(A2)+
  437.     DBRA    D0,lbC0006D8
  438.  
  439.     JMP    (A6)
  440.  
  441. lbW0006E0    dc.w    bpl1pth
  442.     dc.w    (scr)>>16
  443.     dc.w    bpl1ptl
  444.     dc.w    (scr)<<16>>16
  445.     dc.w    bpl2pth
  446.     dc.w    (scr+$2000)>>16
  447.     dc.w    bpl2ptl
  448.     dc.w    (scr+$2000)<<16>>16
  449.     dc.w    bpl3pth
  450.     dc.w    (scr+$4000)>>16
  451.     dc.w    bpl3ptl
  452.     dc.w    (scr+$4000)<<16>>16
  453.     dc.w    bpl4pth
  454.     dc.w    (scr+$6000)>>16
  455.     dc.w    bpl4ptl
  456.     dc.w    (scr+$6000)<<16>>16
  457.     dc.w    $FFFF
  458.     dc.w    $FFFE
  459.  
  460. lbC000704    LEA    _custom,A0
  461.     MOVE.W    #$A200,bplcon0(A0)
  462.     MOVE.W    #0,bplcon1(A0)
  463.     MOVE.W    #0,bpl1mod(A0)
  464.     MOVE.W    #0,bpl2mod(A0)
  465.     MOVE.W    #$3C,ddfstrt(A0)
  466.     MOVE.W    #$D4,ddfstop(A0)
  467.     MOVE.W    #$2C81,diwstrt(A0)
  468.     MOVE.W    #$F4C1,diwstop(A0)
  469.     MOVE.W    #$222,color1(A0)
  470.     LEA    lbW000756,A1
  471.     LEA    $3FFB0,A2
  472.     MOVEQ    #9,D0
  473. lbC00074E    MOVE.W    (A1)+,(A2)+
  474.     DBRA    D0,lbC00074E
  475.  
  476.     JMP    (A6)
  477.  
  478. lbW000756    dc.w    bpl1pth
  479.     dc.w    (scr)>>16
  480.     dc.w    bpl1ptl
  481.     dc.w    (scr)<<16>>16
  482.     dc.w    bpl2pth
  483.     dc.w    (scr+$4000)>>16
  484.     dc.w    bpl2ptl
  485.     dc.w    (scr+$4000)<<16>>16
  486.     dc.w    $FFFF
  487.     dc.w    $FFFE
  488.  
  489. lbC00076A    LEA    _custom,A0
  490.     MOVE.W    #$A204,bplcon0(A0)
  491.     MOVE.W    #0,bplcon1(A0)
  492.     MOVE.W    #$50,bpl1mod(A0)
  493.     MOVE.W    #$50,bpl2mod(A0)
  494.     MOVE.W    #$3C,ddfstrt(A0)
  495.     MOVE.W    #$D4,ddfstop(A0)
  496.     MOVE.W    #$3C81,diwstrt(A0)
  497.     MOVE.W    #$4C1,diwstop(A0)
  498.     MOVE.W    #0,color0(A0)
  499.     MOVE.W    #0,color1(A0)
  500.     MOVE.W    #foreground,color2(A0)
  501.     MOVE.W    #0,color3(A0)
  502.     LEA    lbW0007E2,A1
  503.     LEA    $3FFB0,A2
  504.     MOVEQ    #13,D0
  505. lbC0007C6    MOVE.W    (A1)+,(A2)+
  506.     DBRA    D0,lbC0007C6
  507.  
  508.     LEA    lbW0007FE,A1
  509.     LEA    $3FFD0,A2
  510.     MOVEQ    #13,D0
  511. lbC0007DA    MOVE.W    (A1)+,(A2)+
  512.     DBRA    D0,lbC0007DA
  513.  
  514.     JMP    (A6)
  515.  
  516. lbW0007E2    dc.w    bpl1pth
  517.     dc.w    (scr)>>16
  518.     dc.w    bpl1ptl
  519.     dc.w    (scr)<<16
  520.     dc.w    bpl2pth
  521.     dc.w    (scr-$8000)>>16
  522.     dc.w    bpl2ptl
  523.     dc.w    (scr-$8000)<<16>>16
  524.     dc.w    cop1lch
  525.     dc.w    3
  526.     dc.w    cop1lcl
  527.     dc.w    $FFD0
  528.     dc.w    $FFFF
  529.     dc.w    $FFFE
  530. lbW0007FE    dc.w    bpl1pth
  531.     dc.w    (scr+$50)>>16
  532.     dc.w    bpl1ptl
  533.     dc.w    (scr+$50)<<16>>16
  534.     dc.w    bpl2pth
  535.     dc.w    (scr-$7fb0)>>16
  536.     dc.w    bpl2ptl
  537.     dc.w    (scr-$7fb0)<<16>>16
  538.     dc.w    cop1lch
  539.     dc.w    3
  540.     dc.w    cop1lcl
  541.     dc.w    $FFB0
  542.     dc.w    $FFFF
  543.     dc.w    $FFFE
  544.  
  545. lbC00081A    MOVE.W    #$20,_custom+intreq
  546.     CMP.B    #7,$3FF3A
  547.     BNE.S    lbC000834
  548.     JMP    Warmstart
  549.  
  550. lbC000834    CMP.B    #11,$3FF3A
  551.     BNE.S    lbC000854
  552.     MOVE.B    #1,io+$260
  553.     MOVE.B    #$80,io+$7A01
  554.     BRA.S    lbC000870
  555.  
  556. lbC000854    CMP.B    #$13,$3FF3A
  557.     BNE.S    lbC000876
  558.     MOVE.B    #2,io+$260
  559.     MOVE.B    #0,io+$7A01
  560. lbC000870    JMP    Warmstart
  561.  
  562. lbC000876    MOVEM.L    D0/D7/A0-A4,-(SP)
  563.     BSR    lbC001E32
  564.     BCHG    #1,$BFE001    ; change LED
  565.     TST.W    $3FF1E
  566.     BNE    lbC000918
  567.     SUBQ.W    #1,$3FF08
  568.     BPL.S    lbC0008F2
  569.     MOVE.W    #2,$3FF08
  570.     CMP.B    #2,io+$260
  571.     BEQ.S    lbC0008C4
  572.     MOVE.L    #io+$240,A0    ; palette 64 bytes
  573.     MOVE.L    #_custom+color0,A1
  574.     MOVEQ    #15,D7
  575. lbC0008BA    MOVE.W    (A0)+,D0
  576.     LSL.W    #1,D0
  577.     MOVE.W    D0,(A1)+
  578.     DBRA    D7,lbC0008BA
  579.  
  580. lbC0008C4    MOVEQ    #0,D0
  581.     MOVE.B    io+$201,D0
  582.     SWAP    D0
  583.     MOVE.B    io+$203,D0
  584.     LSL.W    #8,D0
  585.     MOVE.L    D0,A0
  586.     LEA    scr,A1
  587.     CMP.B    #1,io+$260
  588.     BLT.S    Lores
  589.     BGT    Hires
  590.     BRA    Meres
  591.  
  592. lbC0008F2    TST.W    $3FF20
  593.     BEQ.S    lbC00090A
  594.     SUBQ.W    #1,$3FF20
  595.     BNE.S    lbC000918
  596.     BSR    lbC001464
  597.     BRA.S    lbC000918
  598.  
  599. lbC00090A    TST.W    $3FF1E
  600.     BNE.S    lbC000918
  601.     BSR    lbC000C1A
  602. lbC000918    TST.B    $3FF38
  603.     BEQ.S    lbC000928
  604.     SUBQ.B    #1,$3FF38
  605. lbC000928    BSR    lbC000D60
  606.     TST.B    $2847
  607.     BNE.S    lbC000940
  608.     TST.W    $3FF0A
  609.     BEQ.S    lbC000940
  610.     BSR    lbC000A5C
  611. lbC000940    MOVEM.L    (SP)+,D0/D7/A0-A4
  612.     ADDQ.L    #4,$4BA
  613.     JSR    patch26
  614.     MOVE.B #$DF,io+$7A11    ; MOVE.B #$DF,$FFFFFA11.W    
  615. *    JMP    patch9
  616.     MOVE.L    (tv_Lev4IntVect).w,-(SP)
  617.     RTS
  618.  
  619. Lores    LEA    $2000(A1),A2
  620.     LEA    $2000(A2),A3
  621.     LEA    $2000(A3),A4
  622.     MOVE.W    #$3E7,D7
  623. 1$    MOVE.W    (A0)+,(A1)+
  624.     MOVE.W    (A0)+,(A2)+
  625.     MOVE.W    (A0)+,(A3)+
  626.     MOVE.W    (A0)+,(A4)+
  627.     MOVE.W    (A0)+,(A1)+
  628.     MOVE.W    (A0)+,(A2)+
  629.     MOVE.W    (A0)+,(A3)+
  630.     MOVE.W    (A0)+,(A4)+
  631.     MOVE.W    (A0)+,(A1)+
  632.     MOVE.W    (A0)+,(A2)+
  633.     MOVE.W    (A0)+,(A3)+
  634.     MOVE.W    (A0)+,(A4)+
  635.     MOVE.W    (A0)+,(A1)+
  636.     MOVE.W    (A0)+,(A2)+
  637.     MOVE.W    (A0)+,(A3)+
  638.     MOVE.W    (A0)+,(A4)+
  639.     DBRA    D7,1$
  640.  
  641.     BRA    lbC0008F2
  642.  
  643. Meres    LEA    $4000(A1),A2
  644.     MOVE.W    #$3E7,D7
  645. 1$    MOVE.W    (A0)+,(A1)+
  646.     MOVE.W    (A0)+,(A2)+
  647.     MOVE.W    (A0)+,(A1)+
  648.     MOVE.W    (A0)+,(A2)+
  649.     MOVE.W    (A0)+,(A1)+
  650.     MOVE.W    (A0)+,(A2)+
  651.     MOVE.W    (A0)+,(A1)+
  652.     MOVE.W    (A0)+,(A2)+
  653.     MOVE.W    (A0)+,(A1)+
  654.     MOVE.W    (A0)+,(A2)+
  655.     MOVE.W    (A0)+,(A1)+
  656.     MOVE.W    (A0)+,(A2)+
  657.     MOVE.W    (A0)+,(A1)+
  658.     MOVE.W    (A0)+,(A2)+
  659.     MOVE.W    (A0)+,(A1)+
  660.     MOVE.W    (A0)+,(A2)+
  661.     DBRA    D7,1$
  662.  
  663.     BRA    lbC0008F2
  664.  
  665. Hires    CMP.L    #$40000,D0
  666.     BLE.S    lbC0009E4
  667.     MOVE.W    #$3E7,D7
  668. 1$    MOVE.L    (A0)+,(A1)+
  669.     MOVE.L    (A0)+,(A1)+
  670.     MOVE.L    (A0)+,(A1)+
  671.     MOVE.L    (A0)+,(A1)+
  672.     MOVE.L    (A0)+,(A1)+
  673.     MOVE.L    (A0)+,(A1)+
  674.     MOVE.L    (A0)+,(A1)+
  675.     MOVE.L    (A0)+,(A1)+
  676.     DBRA    D7,1$
  677.  
  678.     BRA    lbC0008F2
  679.  
  680. lbC0009E4    MOVE.B    io+$201,D0
  681.     MOVE.B    D0,$3FFB3
  682.     MOVE.B    D0,$3FFD3
  683.     MOVE.B    io+$203,D0
  684.     MOVE.B    D0,$3FFB6
  685.     MOVE.B    D0,$3FFD6
  686.     BRA    lbC0008F2
  687.  
  688. Corners    LEA    scr-scrsize,A0
  689.     EOR.B    #$E0,0(A0)
  690.     EOR.B    #$80,$50(A0)
  691.     EOR.B    #$80,$A0(A0)
  692.     EOR.B    #7,$4F(A0)
  693.     EOR.B    #1,$9F(A0)
  694.     EOR.B    #1,$EF(A0)
  695.     EOR.B    #$80,$7C10(A0)
  696.     EOR.B    #$80,$7C60(A0)
  697.     EOR.B    #$E0,$7CB0(A0)
  698.     EOR.B    #1,$7C5F(A0)
  699.     EOR.B    #1,$7CAF(A0)
  700.     EOR.B    #7,$7CFF(A0)
  701.     RTS
  702.  
  703. lbC000A5C    MOVEM.L    D1/D2/A0/A1/A5,-(SP)
  704.     SUB.L    A5,A5
  705.     LEA    $3FFF0,A0
  706.     CLR.W    D0
  707.     MOVE.W    #$FF00,_custom+potgo
  708.     BTST    #6,$BFE001
  709.     BNE.S    lbC000A80
  710.     BSET    #1,D0
  711. lbC000A80    BTST    #2,_custom+potinp
  712.     BNE.S    lbC000A8E
  713.     BSET    #0,D0
  714. lbC000A8E    OR.B    #$F8,D0
  715.     MOVE.B    D0,(A0)
  716.     MOVE.W    _custom+joy0dat,D2
  717.     MOVE.L    $3FF12,$3FF0E
  718.     MOVE.B    D2,D1
  719.     MOVE.W    D1,$3FF12
  720.     SUB.W    $3FF0E,D1
  721.     LSR.W    #8,D2
  722.     MOVE.W    D2,$3FF14
  723.     SUB.W    $3FF10,D2
  724.     MOVE.B    D1,1(A0)
  725.     MOVE.B    D2,2(A0)
  726.     MOVE.L    $E22,A1
  727.     MOVE.L    A1,D0
  728.     TST.L    D0
  729.     BMI.S    lbC000AD8
  730.     JSR    (A1)
  731. lbC000AD8    MOVEM.L    (SP)+,D1/D2/A0/A1/A5
  732.     RTS
  733.  
  734. lbC000ADE    MOVEM.L    D0-D7/A0-A6,-(SP)
  735.     SUB.L    A5,A5
  736.     MOVE.B    $BFED01,D0
  737.     MOVE.W    #8,_custom+intreq
  738.     MOVE.B    $BFEC01,D0
  739.     BSET    #6,$BFEE01
  740.     MOVE.B    #0,$BFEC01
  741.     BCLR    #6,$BFEE01
  742.     NOT.B    D0
  743.     ROR.B    #1,D0
  744.     MOVE.B    D0,D1
  745.     BSR.S    lbC000B70
  746.     AND.W    #$7F,D1
  747.     CMP.B    #$62,D1
  748.     BEQ.S    lbC000B46
  749.     LEA    scancode(PC),A0
  750.     MOVE.B    0(A0,D1.W),D3
  751.     AND.B    #$80,D0
  752.     OR.B    D3,D0
  753.     CLR.W    D1
  754.     LEA    $C76,A0
  755.     JSR    patch27
  756.     MOVEM.L    (SP)+,D0-D7/A0-A6
  757.     RTE
  758.  
  759. lbC000B46    CLR.W    D1
  760.     MOVE.B    #$3A,D0
  761.     LEA    $C76,A0
  762.     JSR    patch27
  763.     CLR.W    D1
  764.     MOVE.B    #$BA,D0
  765.     LEA    $C76,A0
  766.     JSR    patch27
  767.     MOVEM.L    (SP)+,D0-D7/A0-A6
  768.     RTE
  769.  
  770. lbC000B70    MOVEM.L    D0-D3/A0,-(SP)
  771.     MOVE.B    $3FF3A,D3
  772.     LEA    cdeON.MSG(PC),A0
  773.     MOVEQ    #0,D0
  774. lbC000B80    MOVE.B    (A0)+,D2
  775.     CMP.B    D1,D2
  776.     BNE.S    lbC000B8A
  777.     BSET    D0,D3
  778.     BRA.S    lbC000B94
  779.  
  780. lbC000B8A    OR.B    #$80,D2
  781.     CMP.B    D1,D2
  782.     BNE.S    lbC000B94
  783.     BCLR    D0,D3
  784. lbC000B94    ADDQ.B    #1,D0
  785.     CMP.B    #5,D0
  786.     BNE.S    lbC000B80
  787.     MOVE.B    D3,$3FF3A
  788.     MOVEM.L    (SP)+,D0-D3/A0
  789.     RTS
  790.  
  791. cdeON.MSG    dc.b    'cdeON',0
  792. scancode    dc.b    0
  793.     dc.b    2
  794.     dc.b    3
  795.     dc.b    4
  796.     dc.b    5
  797.     dc.b    6
  798.     dc.b    7
  799.     dc.b    8
  800.     dc.b    9
  801.     dc.b    10
  802.     dc.b    11
  803.     dc.b    12
  804.     dc.b    13
  805.     dc.b    $2B
  806.     dc.b    0
  807.     dc.b    $70
  808.     dc.b    $10
  809.     dc.b    $11
  810.     dc.b    $12
  811.     dc.b    $13
  812.     dc.b    $14
  813.     dc.b    $15
  814.     dc.b    $16
  815.     dc.b    $17
  816.     dc.b    $18
  817.     dc.b    $19
  818.     dc.b    $1A
  819.     dc.b    $1B
  820.     dc.b    0
  821.     dc.b    $6D
  822.     dc.b    $6E
  823.     dc.b    $6F
  824.     dc.b    $1E
  825.     dc.b    $1F
  826.     dc.b    $20
  827.     dc.b    $21
  828.     dc.b    $22
  829.     dc.b    $23
  830.     dc.b    $24
  831.     dc.b    $25
  832.     dc.b    $26
  833.     dc.b    $27
  834.     dc.b    $28
  835.     dc.b    $29
  836.     dc.b    0
  837.     dc.b    $6A
  838.     dc.b    $6B
  839.     dc.b    $6C
  840.     dc.b    $60
  841.     dc.b    $2C
  842.     dc.b    $2D
  843.     dc.b    $2E
  844.     dc.b    $2F
  845.     dc.b    $30
  846.     dc.b    $31
  847.     dc.b    $32
  848.     dc.b    $33
  849.     dc.b    $34
  850.     dc.b    $35
  851.     dc.b    0
  852.     dc.b    $71
  853.     dc.b    $67
  854.     dc.b    $68
  855.     dc.b    $69
  856.     dc.b    $39
  857.     dc.b    14
  858.     dc.b    15
  859.     dc.b    $72
  860.     dc.b    $1C
  861.     dc.b    1
  862.     dc.b    $53
  863.     dcb.b    3,0
  864.     dc.b    $4A
  865.     dc.b    0
  866.     dc.b    $48
  867.     dc.b    $50
  868.     dc.b    $4D
  869.     dc.b    $4B
  870.     dc.b    $3B
  871.     dc.b    $3C
  872.     dc.b    $3D
  873.     dc.b    $3E
  874.     dc.b    $3F
  875.     dc.b    $40
  876.     dc.b    $41
  877.     dc.b    $42
  878.     dc.b    $43
  879.     dc.b    $44
  880.     dc.b    $63
  881.     dc.b    $64
  882.     dc.b    $65
  883.     dc.b    $66
  884.     dc.b    $4E
  885.     dc.b    $62
  886.     dc.b    $2A
  887.     dc.b    $36
  888.     dc.b    $3A
  889.     dc.b    $1D
  890.     dc.b    $38
  891.     dc.b    $61
  892.     dc.b    $52
  893.     dc.b    $47
  894.     dcb.b    2,0
  895.  
  896. lbC000C1A    MOVEM.L    D0/D1,-(SP)
  897.     TST.B    $3FF39
  898.     BNE    lbC000C5C
  899.     MOVE.B    #1,$3FF38
  900.     MOVE.B    #$28,$3FF39
  901.     MOVEQ    #0,D0
  902.     MOVE.B    $3FF3B,D0
  903.     BSR.S    lbC000C68
  904.     MOVEQ    #2,D1
  905.     ADDQ.B    #1,$3FF3B
  906. lbC000C4C    ADDQ.B    #1,D0
  907.     CMP.B    D1,D0
  908.     BNE.S    lbC000C5C
  909.     MOVE.B    #0,$3FF3B
  910. lbC000C5C    SUBQ.B    #1,$3FF39
  911.     MOVEM.L    (SP)+,D0/D1
  912.     RTS
  913.  
  914. lbC000C68    MOVEM.L    D0-D7/A0-A2,-(SP)
  915.     LEA    $3FF34,A0
  916.     LEA    $3FF40,A1
  917.     LEA    $3FF3C,A2
  918.     BSR    lbC000D2A
  919.     TST.B    0(A0,D0.W)
  920.     BNE.S    lbC000C8E
  921.     CLR.B    0(A1,D0.W)
  922. lbC000C8E    TST.B    0(A1,D0.W)
  923.     BEQ.S    lbC000CA2
  924.     BSET    #1,$BFD100
  925.     BRA.S    lbC000CAA
  926.  
  927. lbC000CA2    BCLR    #1,$BFD100
  928. lbC000CAA    MOVE.B    0(A2,D0.W),D1
  929.     CMP.B    #$FF,D1
  930.     BNE.S    lbC000CEA
  931.     BCLR    #0,$BFD100
  932.     NOP
  933.     NOP
  934.     NOP
  935.     BSET    #0,$BFD100
  936.     TST.B    0(A1,D0.W)
  937.     BEQ.S    lbC000CE0
  938.     SUBQ.B    #1,0(A0,D0.W)
  939.     CLR.B    0(A1,D0.W)
  940.     BRA.S    lbC000CEA
  941.  
  942. lbC000CE0    ADDQ.B    #1,0(A0,D0.W)
  943.     MOVE.B    #1,0(A1,D0.W)
  944. lbC000CEA    BTST    #2,$BFE001
  945.     BEQ.S    lbC000D06
  946.     CMP.B    #$FF,D1
  947.     BNE.S    lbC000D20
  948.     MOVE.B    #2,0(A2,D0.W)
  949.     BRA.S    lbC000D20
  950.  
  951. lbC000D06    MOVE.B    #$FF,0(A2,D0.W)
  952.     MOVE.W    temp1,D1
  953.     CMP.W    D0,D1
  954.     BNE.S    lbC000D20
  955.     MOVE.W    #$FFFF,temp1
  956. lbC000D20    BSR.S    lbC000D42
  957.     MOVEM.L    (SP)+,D0-D7/A0-A2
  958.     RTS
  959.  
  960. lbC000D2A    MOVE.L    D0,D6
  961.     ADDQ.L    #3,D6
  962.     MOVE.B    #$7D,$BFD100
  963.     NOP
  964.     NOP
  965.     BCLR    D6,$BFD100
  966.     RTS
  967.  
  968. lbC000D42    MOVE.L    D0,D6
  969.     ADDQ.L    #3,D6
  970.     MOVE.B    #$FD,$BFD100
  971.     NOP
  972.     NOP
  973.     BCLR    D6,$BFD100
  974.     BSET    D6,$BFD100
  975.     RTS
  976.  
  977. lbC000D60    RTS
  978.  
  979. lbC000D62    LEA    XBIOS,A0
  980.     BRA.S    lbC000D70
  981.  
  982. lbC000D6A    LEA    BIOS,A0
  983. lbC000D70    MOVE.L    $4A2,A1
  984.     MOVE.W    (SP)+,D0
  985.     MOVE.W    D0,-(A1)
  986.     MOVE.L    (SP)+,-(A1)
  987.     MOVEM.L    D3-D7/A3-A7,-(A1)
  988.     MOVE.L    A1,$4A2
  989.     BTST    #13,D0
  990.     BNE.S    lbC000D8E
  991.     MOVE    USP,SP
  992. lbC000D8E    MOVE.W    (SP)+,D0
  993.     CMP.W    (A0)+,D0
  994.     BGE.S    lbC000DA4
  995.     LSL.W    #2,D0
  996.     MOVE.L    0(A0,D0.W),D0
  997.     MOVE.L    D0,A0
  998.     BPL.S    lbC000DA0
  999.     MOVE.L    (A0),A0
  1000. lbC000DA0    SUB.L    A5,A5
  1001.     JSR    (A0)
  1002. lbC000DA4    MOVE.L    $4A2,A1
  1003.     MOVEM.L    (A1)+,D3-D7/A3-A7
  1004.     MOVE.L    (A1)+,-(SP)
  1005.     MOVE.W    (A1)+,-(SP)
  1006.     MOVE.L    A1,$4A2
  1007.     RTE
  1008.  
  1009.     ifd    0
  1010. BIOS    dc.w    12
  1011.     dc.l    $40A46
  1012.     dc.l    BCONSTAT
  1013.     dc.l    BCONIN
  1014.     dc.l    BCONOUT
  1015.     dc.l    $80000476
  1016.     dc.l    $40A72
  1017.     dc.l    $40A8A
  1018.     dc.l    $80000472
  1019.     dc.l    BCOSTAT
  1020.     dc.l    $8000047E
  1021.     dc.l    $40A2E
  1022.     dc.l    $40A34
  1023. XBIOS    dc.w    $41
  1024.     dc.l    INITMOUSE
  1025.     dc.l    $40670
  1026.     dc.l    $40A92
  1027.     dc.l    $40AA6
  1028.     dc.l    GETREZ
  1029.     dc.l    SETSCREEN
  1030.     dc.l    $40B06
  1031.     dc.l    $40B0E
  1032.     dc.l    FLOPRD
  1033.     dc.l    FLOPWR
  1034.     dc.l    FLOPFMT
  1035.     dc.l    $40FC0
  1036.     dc.l    DUMMY
  1037.     dc.l    DUMMY
  1038.     dc.l    $428F6
  1039.     dc.l    DUMMY
  1040.     dc.l    $43088
  1041.     dc.l    $41510
  1042.     dc.l    $415F8
  1043.     dc.l    $41AE2
  1044.     dc.l    $40D50
  1045.     dc.l    $446F2
  1046.     dc.l    SETTIME
  1047.     dc.l    GETTIME
  1048.     dc.l    $430B4
  1049.     dc.l    DUMMY
  1050.     dc.l    DUMMY
  1051.     dc.l    DUMMY
  1052.     dc.l    GIACCESS
  1053.     dc.l    OFFGIBIT
  1054.     dc.l    ONGIBIT
  1055.     dc.l    DUMMY
  1056.     dc.l    DOSOUND
  1057.     dc.l    $430E2
  1058.     dc.l    $43116
  1059.     dc.l    $430F4
  1060.     dc.l    $43254
  1061.     dc.l    $407D0
  1062.     dc.l    $4097E
  1063.     dc.l    $40B34
  1064.     dc.l    DUMMY
  1065.     dcb.l    $17,$40670
  1066.     dc.l    $40EF6
  1067.     endc
  1068.  
  1069. GIACCESS    MOVE.W    #$F0,_custom+color0
  1070.     MOVEQ    #0,D0
  1071.     MOVEQ    #0,D1
  1072.     LEA    io+$880,A0    ; snd
  1073.     MOVE.B    4(SP),D0
  1074.     MOVE.W    6(SP),D1
  1075.     BTST    #7,D1
  1076.     BEQ.S    lbC000F20
  1077.     AND.B    #15,D0
  1078.     MOVE.B    D0,0(A0,D1.W)
  1079.     CLR.B    D0
  1080.     RTS
  1081.  
  1082. lbC000F20    MOVE.B    0(A0,D1.W),D0
  1083.     RTS
  1084.  
  1085. OFFGIBIT    MOVEQ    #0,D0
  1086.     RTS
  1087.  
  1088. ONGIBIT    MOVEQ    #0,D0
  1089.     RTS
  1090.  
  1091. DOSOUND    MOVEQ    #0,D0
  1092.     RTS
  1093.  
  1094. BCONSTAT    MOVE    #$2100,SR
  1095.     CMP.W    #0,4(SP)
  1096.     BEQ.S    lbC000F48
  1097.     CMP.W    #2,4(SP)
  1098.     BNE    DUMMY
  1099. lbC000F48    JMP    _BCONSTAT
  1100.  
  1101. BCONIN    CMP.W    #2,4(SP)
  1102.     BNE    DUMMY
  1103.     MOVE    #$2100,SR
  1104.     JMP    _BCONIN
  1105.  
  1106. BCONOUT    CMP.W    #0,4(SP)
  1107.     BEQ.S    lbC000F82
  1108.     CMP.W    #2,4(SP)
  1109.     BEQ.S    lbC000F7C
  1110.     CMP.W    #5,4(SP)
  1111.     BNE    DUMMY
  1112. lbC000F7C    JMP    _BCONOUT
  1113.  
  1114. lbC000F82    BTST    #2,$BFD000
  1115.     BEQ    DUMMY
  1116. lbC000F8E    BTST    #0,$BFD000
  1117.     BNE.S    lbC000F8E
  1118.     MOVE.B    #$FF,$BFE301
  1119.     MOVE.B    7(SP),$BFE101
  1120.     MOVEQ    #1,D0
  1121.     RTS
  1122.  
  1123. BCOSTAT    CMP.W    #0,4(SP)
  1124.     BEQ.S    lbC000FC4
  1125.     CMP.W    #2,4(SP)
  1126.     BNE    DUMMY
  1127.     JMP    _BCOSTAT
  1128.  
  1129. lbC000FC4    BTST    #0,$BFD000
  1130.     BNE    DUMMY
  1131.     MOVEQ    #-$1,D0
  1132.     RTS
  1133.  
  1134. INITMOUSE    MOVE.L    10(SP),$E22
  1135.     MOVE.W    #1,$3FF0A
  1136.     MOVEQ    #-$1,D0
  1137.     RTS
  1138.  
  1139. SETSCREEN    TST.L    4(SP)
  1140.     BMI.S    lbC000FF4
  1141.     MOVE.L    4(SP),$44E(A5)
  1142. lbC000FF4    TST.L    8(SP)
  1143.     BMI.S    lbC00100A
  1144.     MOVE.B    9(SP),io+$201
  1145.     MOVE.B    10(SP),io+$203
  1146. lbC00100A    TST.W    12(SP)
  1147.     BMI.S    lbC001028
  1148.     MOVE.B    13(SP),D0
  1149.     CMP.B    $44C(A5),D0
  1150.     BEQ.S    lbC001028
  1151.     MOVE.B    D0,$44C(A5)
  1152.     MOVE.B    D0,io+$260
  1153.     BRA    Warmstart
  1154.  
  1155. lbC001028    RTS
  1156.  
  1157. GETREZ    MOVEQ    #0,D0
  1158.     MOVE.B    $44C,D0
  1159.     RTS
  1160.  
  1161. FLOPRD    MOVE.W    12(SP),$3FF22
  1162.     BSR    lbC00136E
  1163.     TST.L    D0
  1164.     BNE.S    lbC001072
  1165.     MOVE.W    $12(SP),$3FF24
  1166.     MOVE.W    $10(SP),$3FF26
  1167.     MOVE.W    14(SP),$3FF28
  1168.     MOVE.W    $14(SP),$3FF2A
  1169.     MOVE.L    4(SP),$3FF2C
  1170.     BSR    lbC0014F2
  1171. lbC001072    BSR    lbC001422
  1172.     TST.L    D0
  1173.     RTS
  1174.  
  1175. FLOPWR    MOVE.W    12(SP),$3FF22
  1176.     BSR    lbC00136E
  1177.     TST.L    D0
  1178.     BNE.S    lbC0010B8
  1179.     MOVE.W    $12(SP),$3FF24
  1180.     MOVE.W    $10(SP),$3FF26
  1181.     MOVE.W    14(SP),$3FF28
  1182.     MOVE.W    $14(SP),$3FF2A
  1183.     MOVE.L    4(SP),$3FF2C
  1184.     BSR    lbC0016F0
  1185. lbC0010B8    BSR    lbC001422
  1186.     TST.L    D0
  1187.     RTS
  1188.  
  1189. FLOPFMT    CMP.L    #$87654321,$16(SP)
  1190.     BNE.S    DUMMY
  1191.     MOVE.W    12(SP),$3FF22
  1192.     BSR    lbC00136E
  1193.     TST.L    D0
  1194.     BNE.S    lbC00110A
  1195.     MOVE.W    $12(SP),$3FF24
  1196.     MOVE.W    $10(SP),$3FF26
  1197.     MOVE.W    14(SP),$3FF32
  1198.     MOVE.L    4(SP),$3FF2C
  1199.     MOVE.W    $1A(SP),$3FF30
  1200.     BSR    lbC001A68
  1201. lbC00110A    BSR    lbC001422
  1202.     TST.L    D0
  1203.     RTS
  1204.  
  1205. DUMMY    CLR.L    D0
  1206.     RTS
  1207.  
  1208. lbC001116    MOVEQ    #-$2,D0
  1209.     TST.L    D0
  1210.     RTS
  1211.  
  1212. lbC00111C    MOVE.W    #2,$4A6
  1213.     MOVE.L    #3,$4C2
  1214.     MOVEQ    #1,D0
  1215. lbC001130    MOVE.W    D0,$3FF22
  1216.     MOVE.L    D0,-(SP)
  1217.     BSR    lbC00135E
  1218.     MOVE.L    (SP)+,D0
  1219.     TST.L    D6
  1220.     BPL.S    lbC001150
  1221.     SUBQ.W    #1,$4A6
  1222.     BCLR    D0,$4C5
  1223. lbC001150    DBRA    D0,lbC001130
  1224.  
  1225.     BSR    GETTIME
  1226.     SWAP    D0
  1227.     MOVE.W    D0,-(SP)
  1228.     MOVE.W    #$2B,-(SP)
  1229.     TRAP    #1
  1230.     ADDQ.L    #4,SP
  1231.     BSR    GETTIME
  1232.     MOVE.W    D0,-(SP)
  1233.     MOVE.W    #$2D,-(SP)
  1234.     TRAP    #1
  1235.     ADDQ.L    #4,SP
  1236.     RTS
  1237.  
  1238. lbC001174    TST.L    6(SP)
  1239.     BEQ    lbC001276
  1240.     MOVE.L    6(SP),A0
  1241.     MOVE.W    14(SP),$3FF22
  1242.     BSR    lbC00136E
  1243.     TST.L    D0
  1244.     BNE    lbC00128C
  1245.     MOVE.W    12(SP),D6
  1246.     MOVE.W    10(SP),D7
  1247.     MOVE.L    #$7590,A1
  1248.     CMP.W    #1,$3FF22
  1249.     BEQ.S    lbC0011B0
  1250.     MOVE.L    #$7570,A1
  1251. lbC0011B0    CLR.W    $3FF24
  1252.     MOVE.W    D6,D0
  1253.     EXT.L    D0
  1254.     DIVU    $16(A1),D0
  1255.     MOVE.W    D0,$3FF26
  1256.     SWAP    D0
  1257.     CMP.W    $18(A1),D0
  1258.     BLT.S    lbC0011D8
  1259.     MOVE.W    #1,$3FF24
  1260.     SUB.W    $18(A1),D0
  1261. lbC0011D8    MOVE.W    D0,D1
  1262.     ADDQ.W    #1,D1
  1263.     MOVE.W    D1,$3FF28
  1264.     MOVE.W    D0,D1
  1265.     ADD.W    D7,D1
  1266.     CMP.W    $18(A1),D1
  1267.     BLE.S    lbC0011F0
  1268.     MOVE.W    $18(A1),D1
  1269. lbC0011F0    SUB.W    D0,D1
  1270.     MOVE.W    D1,$3FF2A
  1271.     MOVE.L    A0,$3FF2C
  1272.     MOVE.W    4(SP),D0
  1273.     CMP.W    #0,D0
  1274.     BEQ.S    lbC001240
  1275.     CMP.W    #1,D0
  1276.     BEQ.S    lbC001226
  1277.     CMP.W    #2,D0
  1278.     BEQ.S    lbC00124C
  1279.     CMP.W    #3,D0
  1280.     BEQ.S    lbC001232
  1281.     MOVEQ    #-$5,D0
  1282.     BRA.S    lbC00128C
  1283.  
  1284. lbC001226    MOVEM.L    D6/D7/A1,-(SP)
  1285.     BSR    lbC0016F0
  1286.     BRA.S    lbC001256
  1287.  
  1288. lbC001232    MOVEM.L    D6/D7/A1,-(SP)
  1289.     BSR    lbC0016F0
  1290.     CLR.L    D0
  1291.     BRA.S    lbC001256
  1292.  
  1293. lbC001240    MOVEM.L    D6/D7/A1,-(SP)
  1294.     BSR    lbC0014F2
  1295.     BRA.S    lbC001256
  1296.  
  1297. lbC00124C    MOVEM.L    D6/D7/A1,-(SP)
  1298.     BSR    lbC0014F2
  1299.     CLR.L    D0
  1300. lbC001256    MOVEM.L    (SP)+,D6/D7/A1
  1301.     TST.L    D0
  1302.     BNE.S    lbC00128C
  1303.     ADD.W    $3FF2A,D6
  1304.     SUB.W    $3FF2A,D7
  1305.     BNE    lbC0011B0
  1306.     BSR    lbC001422
  1307.     CLR.L    D0
  1308.     RTS
  1309.  
  1310. lbC001276    MOVE.W    14(SP),D0
  1311.     MOVE.W    10(SP),D1
  1312.     LEA    $3FF3C,A0
  1313.     MOVE.B    D1,0(A0,D0.W)
  1314.     CLR.L    D0
  1315.     RTS
  1316.  
  1317. lbC00128C    BSR    lbC001422
  1318.     TST.L    D0
  1319.     RTS
  1320.  
  1321. lbC001294    TST.B    $3FF38
  1322.     BNE.S    lbC001294
  1323.     LEA    $3FF3C,A0
  1324.     MOVE.W    4(SP),D0
  1325.     MOVEQ    #0,D1
  1326.     MOVE.B    0(A0,D0.W),D1
  1327.     TST.B    D1
  1328.     BMI.S    lbC0012BC
  1329.     CLR.B    0(A0,D0.W)
  1330.     MOVE.L    D1,D0
  1331.     RTS
  1332.  
  1333. lbC0012BC    MOVEQ    #0,D0
  1334.     RTS
  1335.  
  1336. lbC0012C0    LINK    A6,#0
  1337.     MOVEM.L    D6/D7,-(SP)
  1338.     JSR    lbC00111C
  1339.     TST.W    $4A6
  1340.     BEQ.S    lbC0012DA
  1341.     MOVEQ    #1,D0
  1342.     BRA.S    lbC0012DC
  1343.  
  1344. lbC0012DA    MOVEQ    #2,D0
  1345. lbC0012DC    MOVE.W    D0,D7
  1346.     TST.W    $4A6
  1347.     BEQ.S    lbC00132A
  1348.     CMP.W    #2,$446
  1349.     BGE.S    lbC00132A
  1350.     MOVE.W    #1,(SP)
  1351.     CLR.W    -(SP)
  1352.     CLR.W    -(SP)
  1353.     MOVE.W    #1,-(SP)
  1354.     MOVE.W    $446,-(SP)
  1355.     CLR.L    -(SP)
  1356.     MOVE.L    #$16DA,-(SP)
  1357.     JSR    FLOPRD
  1358.     ADD.L    #$10,SP
  1359.     TST.L    D0
  1360.     BNE.S    lbC00131E
  1361.     CLR.W    D7
  1362.     BRA.S    lbC00132A
  1363.  
  1364. lbC00131E    TST.B    $9F8
  1365.     BNE.S    lbC00132A
  1366.     MOVEQ    #3,D0
  1367.     BRA.S    lbC001350
  1368.  
  1369. lbC00132A    TST.W    D7
  1370.     BEQ.S    lbC001332
  1371.     MOVE.W    D7,D0
  1372.     BRA.S    lbC001350
  1373.  
  1374. lbC001332    MOVE.W    #$100,(SP)
  1375.     MOVE.L    #$16DA,-(SP)
  1376.     JSR    patch28
  1377.     ADDQ.L    #4,SP
  1378.     CMP.W    #$1234,D0
  1379.     BNE.S    lbC00134E
  1380.     CLR.W    D0
  1381.     BRA.S    lbC001350
  1382.  
  1383. lbC00134E    MOVEQ    #4,D0
  1384. lbC001350    TST.L    (SP)+
  1385.     MOVE.L    (SP)+,D7
  1386.     UNLK    A6
  1387.     RTS
  1388.  
  1389. lbC001358    DBRA    D0,lbC001358
  1390.  
  1391.     RTS
  1392.  
  1393. lbC00135E    BSR.S    lbC00136E
  1394.     MOVE.L    #$5A,D6
  1395.     BSR    lbC0014A0
  1396.     RTS
  1397.  
  1398. lbC00136E    TST.B    $3FF38
  1399.     BNE.S    lbC00136E
  1400.     MOVE.W    #1,$3FF1E
  1401.     MOVE.W    $3FF1C,D0
  1402.     CMP.W    $3FF22,D0
  1403.     BEQ.S    lbC0013A2
  1404.     BSR    lbC001464
  1405.     CLR.W    $3FF20
  1406.     MOVE.W    $3FF22,$3FF1C
  1407. lbC0013A2    MOVE.W    $3FF1C,D0
  1408.     TST.W    $3FF20
  1409.     BNE.S    lbC001416
  1410.     BSR.S    lbC00142A
  1411.     BCLR    #1,$BFD100
  1412.     BCLR    #0,$BFD100
  1413.     NOP
  1414.     NOP
  1415.     NOP
  1416.     NOP
  1417.     BSET    #0,$BFD100
  1418.     MOVE.L    D7,-(SP)
  1419.     MOVE.L    #$A88,D7
  1420.     BSR    lbC001CC0
  1421.     MOVE.L    (SP)+,D7
  1422.     MOVE.L    A0,-(SP)
  1423.     MOVE.W    $3FF22,D0
  1424.     LEA    $3FF34,A0
  1425.     ADDQ.B    #1,0(A0,D0.W)
  1426.     MOVE.L    (SP)+,A0
  1427.     BTST    #2,$BFE001
  1428.     BNE.S    lbC001416
  1429.     CLR.W    $3FF1E
  1430.     MOVE.W    #$64,$3FF20
  1431.     MOVE.L    #$FFFFFFEF,D0
  1432.     RTS
  1433.  
  1434. lbC001416    MOVE.W    #$64,$3FF20
  1435.     MOVEQ    #0,D0
  1436.     RTS
  1437.  
  1438. lbC001422    CLR.W    $3FF1E
  1439.     RTS
  1440.  
  1441. lbC00142A    ADDQ.W    #3,D0
  1442.     MOVE.B    #$FF,$BFD300
  1443.     MOVE.B    #3,$BFE201
  1444.     BSET    D0,$BFD100
  1445.     BSET    #0,$BFD100
  1446.     BCLR    #7,$BFD100
  1447.     BCLR    D0,$BFD100
  1448.     MOVEQ    #5,D7
  1449. lbC00145A    BSR    lbC001C9C
  1450.     DBRA    D7,lbC00145A
  1451.  
  1452.     RTS
  1453.  
  1454. lbC001464    MOVE.W    $3FF1C,D0
  1455.     ADDQ.W    #3,D0
  1456.     MOVE.W    #dsksize,_custom+dsklen
  1457.     BSET    D0,$BFD100
  1458.     BSET    #7,$BFD100
  1459.     NOP
  1460.     NOP
  1461.     NOP
  1462.     BCLR    D0,$BFD100
  1463.     NOP
  1464.     NOP
  1465.     NOP
  1466.     NOP
  1467.     NOP
  1468.     BSET    D0,$BFD100
  1469.     RTS
  1470.  
  1471. lbC0014A0    MOVE.B    $BFE001,D0
  1472.     BTST    #4,D0
  1473.     BEQ.S    lbC0014DE
  1474.     BSET    #1,$BFD100
  1475.     BCLR    #0,$BFD100
  1476.     NOP
  1477.     NOP
  1478.     NOP
  1479.     NOP
  1480.     BSET    #0,$BFD100
  1481.     MOVE.L    #$A88,D7
  1482.     BSR    lbC001CC0
  1483.     SUBQ.L    #1,D6
  1484.     BNE.S    lbC0014A0
  1485.     MOVEQ    #-$1,D6
  1486.     RTS
  1487.  
  1488. lbC0014DE    MOVE.W    $3FF22,D1
  1489.     LEA    $3FF34,A0
  1490.     CLR.B    0(A0,D1.W)
  1491.     MOVEQ    #0,D6
  1492. lbC0014F0    RTS
  1493.  
  1494. lbC0014F2    MOVE.W    $3FF22,D0
  1495.     MOVE.W    temp1,D1
  1496.     CMP.W    D0,D1
  1497.     BNE.S    lbC00152C
  1498.     MOVE.W    $3FF24,D0
  1499.     MOVE.W    temp2,D1
  1500.     CMP.W    D0,D1
  1501.     BNE.S    lbC00152C
  1502.     MOVE.W    $3FF26,D0
  1503.     MOVE.W    temp3,D1
  1504.     CMP.W    D0,D1
  1505.     BNE.S    lbC00152C
  1506.     BRA    lbC0015BE
  1507.  
  1508. lbC00152C    BSR    lbC001CCA
  1509.     MOVE.L    #$A88,D7
  1510.     BSR    lbC001CC0
  1511.     BTST    #2,$BFE001
  1512.     BEQ    lbC001A60
  1513.     BSET    #2,$BFD100
  1514.     TST.W    $3FF24
  1515.     BEQ.S    lbC00155E
  1516.     BCLR    #2,$BFD100
  1517. lbC00155E    MOVE.W    #2,_custom+intreq
  1518.     MOVE.L    #dsk,_custom+dskpth
  1519.     MOVE.W    #sync,_custom+dsksync
  1520.     MOVE.W    #$7F00,_custom+adkcon
  1521.     MOVE.W    #$9500,_custom+adkcon
  1522.     MOVE.W    #$8210,_custom+dmacon
  1523.     BSR    lbC001C9C
  1524.     MOVE.W    #dsksize,_custom+dsklen
  1525.     MOVE.W    #$9A00,_custom+dsklen
  1526.     MOVE.W    #$9A00,_custom+dsklen
  1527.     BSR    lbC001D20
  1528.     MOVE.W    #dsksize,_custom+dsklen
  1529.     TST.L    D0
  1530.     BEQ.S    lbC0015F2
  1531.     RTS
  1532.  
  1533. lbC0015BE    MOVEQ    #0,D0
  1534.     MOVEQ    #0,D1
  1535.     MOVE.W    $3FF28,D0
  1536.     MOVE.W    $3FF2A,D1
  1537.     MOVE.L    $3FF2C,A0
  1538.     SUBQ.L    #1,D0
  1539.     LSL.L    #8,D0
  1540.     LSL.L    #1,D0
  1541.     LEA    buffer,A1
  1542.     ADD.L    D0,A1
  1543.     LSL.L    #8,D1
  1544.     LSL.L    #1,D1
  1545.     SUBQ.L    #1,D1
  1546. lbC0015E8    MOVE.B    (A1)+,(A0)+
  1547.     DBRA    D1,lbC0015E8
  1548.  
  1549.     CLR.L    D0
  1550.     RTS
  1551.  
  1552. lbC0015F2    LEA    $38004,A1
  1553.     MOVE.L    A1,A0
  1554.     LEA    lbL00206A,A2
  1555.     LEA    lbW00216A,A3
  1556.     MOVE.W    #$19FF,D7
  1557.     MOVEQ    #0,D1
  1558. lbC00160C    MOVE.B    (A1)+,D1
  1559.     MOVE.B    0(A2,D1.W),D0
  1560.     MOVE.B    (A1)+,D1
  1561.     OR.B    0(A3,D1.W),D0
  1562.     MOVE.B    D0,(A0)+
  1563.     DBRA    D7,lbC00160C
  1564.  
  1565.     MOVE.W    $3FF28,D0
  1566.     MOVE.W    $3FF2A,D1
  1567.     SUBQ.W    #1,D1
  1568.     MOVE.L    $3FF2C,A0
  1569. lbC001632    LEA    $38004,A1
  1570.     LEA    $39B5C,A2
  1571.     MOVE.B    #$A1,$1B58(A1)
  1572.     MOVE.B    #$A1,$1B59(A1)
  1573.     MOVE.B    #$FE,$1B5A(A1)
  1574. lbC001650    CMP.B    #$A1,(A1)+
  1575.     BNE.S    lbC001650
  1576.     CMP.B    #$FE,(A1)
  1577.     BNE.S    lbC001650
  1578.     CMP.B    3(A1),D0
  1579.     BEQ.S    lbC001682
  1580.     CMP.B    #1,D0
  1581.     BNE.S    lbC001676
  1582.     MOVEQ    #12,D7
  1583.     CMP.B    3(A1),D7
  1584.     BEQ.S    lbC001682
  1585. lbC001676    CMP.L    A2,A1
  1586.     BLT.S    lbC001650
  1587.     MOVE.L    #$FFFFFFF8,D0
  1588.     RTS
  1589.  
  1590. lbC001682    ADD.L    #$20,A1
  1591. lbC001688    CMP.B    #$A1,(A1)+
  1592.     BNE.S    lbC001688
  1593.     CMP.B    #$FB,(A1)
  1594.     BNE.S    lbC001688
  1595.     MOVE.B    #$FB,(A1)
  1596.     MOVE.B    #$A1,-(A1)
  1597.     MOVE.B    #$A1,-(A1)
  1598.     MOVE.B    #$A1,-(A1)
  1599.     ADDQ.L    #4,A1
  1600.     MOVE.W    #$1FF,D7
  1601. lbC0016AA    MOVE.B    (A1)+,(A0)+
  1602.     MOVE.L    A0,$3FF2C
  1603.     DBRA    D7,lbC0016AA
  1604.  
  1605.     MOVE.L    D6,-(SP)
  1606.     MOVEQ    #-$1,D6
  1607.     MOVEQ    #-$1,D7
  1608.     SUB.L    #$204,A1
  1609.     MOVE.L    #$205,D2
  1610.     BSR    lbC001E0A
  1611.     OR.B    D6,D7
  1612.     MOVE.L    (SP)+,D6
  1613.     TST.B    D7
  1614.     BEQ.S    lbC0016DA
  1615.     BSR    lbC001C5A
  1616. lbC0016DA    ADDQ.W    #1,D0
  1617.     DBRA    D1,lbC001632
  1618.  
  1619.     MOVEQ    #0,D0
  1620.     RTS
  1621.  
  1622.     MOVE.W    #15,_custom+color0
  1623.     MOVEQ    #-$4,D0
  1624.     RTS
  1625.  
  1626. lbC0016F0    LEA    lbC0016F0(PC),A6
  1627.     BSR    lbC001CCA
  1628.     MOVE.L    #$A88,D7
  1629.     BSR    lbC001CC0
  1630.     BTST    #2,$BFE001
  1631.     BEQ    lbC001A60
  1632.     BSET    #2,$BFD100
  1633.     TST.W    $3FF24
  1634.     BEQ.S    lbC001726
  1635.     BCLR    #2,$BFD100
  1636. lbC001726    MOVE.W    $3FF22,D0
  1637.     MOVE.W    temp1,D1
  1638.     CMP.W    D0,D1
  1639.     BNE.S    lbC001760
  1640.     MOVE.W    $3FF24,D0
  1641.     MOVE.W    temp2,D1
  1642.     CMP.W    D0,D1
  1643.     BNE.S    lbC001760
  1644.     MOVE.W    $3FF26,D0
  1645.     MOVE.W    temp3,D1
  1646.     CMP.W    D0,D1
  1647.     BNE.S    lbC001760
  1648.     BRA    lbC001808
  1649.  
  1650. lbC001760    MOVE.W    $3FF2A,-(SP)
  1651.     MOVE.W    $3FF28,-(SP)
  1652.     MOVE.L    $3FF2C,-(SP)
  1653.     MOVE.L    #buffer,$3FF2C
  1654.     MOVE.W    #9,$3FF2A
  1655.     MOVE.W    #1,$3FF28
  1656.     BSR    lbC00155E
  1657.     TST.L    D0
  1658.     BNE    lbC001A0A
  1659.     MOVE.L    #buffer+$1200,$3FF2C
  1660.     MOVE.W    #1,$3FF2A
  1661.     MOVE.W    #10,$3FF28
  1662.     BSR    lbC00155E
  1663.     MOVE.L    (SP)+,$3FF2C
  1664.     MOVE.W    (SP)+,$3FF28
  1665.     MOVE.W    (SP)+,$3FF2A
  1666.     MOVE.W    #9,$3FF32
  1667.     TST.L    D0
  1668.     BNE.S    lbC0017DC
  1669.     MOVE.W    #10,$3FF32
  1670. lbC0017DC    MOVE.W    $3FF22,temp1
  1671.     MOVE.W    $3FF24,temp2
  1672.     MOVE.W    $3FF26,temp3
  1673.     MOVE.W    $3FF32,temp4
  1674.     BRA.S    lbC001812
  1675.  
  1676. lbC001808    MOVE.W    temp4,$3FF32
  1677. lbC001812    LEA    buffer,A1
  1678.     MOVEQ    #0,D0
  1679.     MOVE.W    $3FF28,D0
  1680.     SUBQ.L    #1,D0
  1681.     LSL.L    #1,D0
  1682.     LSL.L    #8,D0
  1683.     ADD.L    D0,A1
  1684.     MOVE.L    $3FF2C,A2
  1685.     MOVE.W    $3FF2A,D1
  1686.     SUBQ.L    #1,D1
  1687. lbC001836    MOVE.L    #$1FF,D0
  1688. lbC00183C    MOVE.B    (A2)+,(A1)+
  1689.     DBRA    D0,lbC00183C
  1690.  
  1691.     DBRA    D1,lbC001836
  1692.  
  1693.     LEA    buffer,A2
  1694.     LEA    $38004,A1
  1695.     MOVEQ    #14,D0
  1696. lbC001854    MOVE.L    #gap4,(A1)+
  1697.     DBRA    D0,lbC001854
  1698.  
  1699.     MOVEQ    #1,D1
  1700. lbC001860    MOVEQ    #2,D0
  1701. lbC001862    CLR.L    (A1)+
  1702.     DBRA    D0,lbC001862
  1703.  
  1704.     MOVE.L    #$A1A1A1FE,(A1)+
  1705.     MOVE.B    $3FF27,(A1)+
  1706.     MOVE.B    $3FF25,(A1)+
  1707.     MOVE.B    D1,(A1)+
  1708.     MOVE.B    #2,(A1)+
  1709.     MOVEM.L    D2/D6/D7/A1,-(SP)
  1710.     SUBQ.L    #8,A1
  1711.     MOVEQ    #-$1,D6
  1712.     MOVEQ    #-$1,D7
  1713.     MOVEQ    #7,D2
  1714.     BSR    lbC001E0A
  1715.     MOVE.B    D6,(A1)+
  1716.     MOVE.B    D7,(A1)+
  1717.     MOVEM.L    (SP)+,D2/D6/D7/A1
  1718.     ADDQ.L    #2,A1
  1719.     MOVEQ    #10,D0
  1720. lbC00189C    MOVE.W    #gap2,(A1)+
  1721.     DBRA    D0,lbC00189C
  1722.  
  1723.     MOVEQ    #2,D0
  1724. lbC0018A6    CLR.L    (A1)+
  1725.     DBRA    D0,lbC0018A6
  1726.  
  1727.     MOVE.L    #$A1A1A1FB,(A1)+
  1728.     MOVE.L    #buffer,A2
  1729.     MOVE.L    D1,D0
  1730.     SUBQ.L    #1,D0
  1731.     LSL.L    #8,D0
  1732.     LSL.L    #1,D0
  1733.     ADD.L    D0,A2
  1734.     MOVEQ    #$7F,D0
  1735. lbC0018C4    MOVE.L    (A2)+,(A1)+
  1736.     DBRA    D0,lbC0018C4
  1737.  
  1738.     MOVEM.L    D2/D6/D7/A1,-(SP)
  1739.     SUB.L    #$204,A1
  1740.     MOVEQ    #-$1,D6
  1741.     MOVEQ    #-$1,D7
  1742.     MOVE.L    #$203,D2
  1743.     BSR    lbC001E0A
  1744.     MOVE.B    D6,(A1)+
  1745.     MOVE.B    D7,(A1)+
  1746.     MOVEM.L    (SP)+,D2/D6/D7/A1
  1747.     ADDQ.L    #2,A1
  1748.     MOVEQ    #9,D0
  1749. lbC0018EE    MOVE.L    #gap4,(A1)+
  1750.     DBRA    D0,lbC0018EE
  1751.  
  1752.     ADDQ.L    #1,D1
  1753.     MOVEQ    #0,D2
  1754.     MOVE.W    $3FF32,D2
  1755.     ADDQ.L    #1,D2
  1756.     CMP.L    D2,D1
  1757.     BNE    lbC001860
  1758.     LEA    $39A04,A0
  1759. lbC001910    MOVE.L    #gap4,(A1)+
  1760.     CMP.L    A0,A1
  1761.     BLT.S    lbC001910
  1762.     LEA    $3B404,A1
  1763.     LEA    $39A04,A0
  1764.     LEA    lbW00226A,A2
  1765.     MOVE.L    #$19FF,D1
  1766. lbC001934    MOVEQ    #0,D0
  1767.     MOVE.B    -(A0),D0
  1768.     ADD.W    D0,D0
  1769.     MOVE.W    0(A2,D0.W),D0
  1770.     MOVE.W    D0,-(A1)
  1771.     DBRA    D1,lbC001934
  1772.  
  1773.     LEA    $38004,A0
  1774.     MOVE.L    #$3400,D6
  1775.     JSR    lbC001D4A
  1776.     LEA    $3807C,A0
  1777.     MOVEQ    #0,D0
  1778.     MOVE.W    $3FF32,D0
  1779.     SUBQ.L    #1,D0
  1780. lbC001966    ADD.L    #$18,A0
  1781.     MOVE.W    #sync,(A0)+
  1782.     MOVE.W    #sync,(A0)+
  1783.     MOVE.W    #sync,(A0)+
  1784.     ADD.L    #$52,A0
  1785.     MOVE.W    #sync,(A0)+
  1786.     MOVE.W    #sync,(A0)+
  1787.     MOVE.W    #sync,(A0)+
  1788.     ADD.L    #$456,A0
  1789.     DBRA    D0,lbC001966
  1790.  
  1791.     MOVE.L    $3FF2C,A0
  1792.     CLR.L    D0
  1793.     MOVE.W    $3FF2A,D0
  1794.     LSL.L    #8,D0
  1795.     LSL.L    #1,D0
  1796.     ADD.L    D0,A0
  1797.     BTST    #3,$BFE001
  1798.     BEQ.S    lbC001A1A
  1799.     MOVE.W    #2,_custom+intreq
  1800.     MOVE.L    #dsk,_custom+dskpth
  1801.     MOVE.W    #$7F00,_custom+adkcon
  1802.     MOVE.W    #$8100,_custom+adkcon
  1803.     MOVE.W    #$8210,_custom+dmacon
  1804.     MOVE.W    #dsksize,_custom+dsklen
  1805.     BSR    lbC001C9C
  1806.     MOVE.W    #$D86A,_custom+dsklen
  1807.     MOVE.W    #$D86A,_custom+dsklen
  1808.     BSR    lbC001D20
  1809.     MOVE.W    #dsksize,_custom+dsklen
  1810.     CLR.L    D0
  1811.     RTS
  1812.  
  1813. lbC001A0A    MOVE.L    D0,-(SP)
  1814.     MOVE.L    #15,D0
  1815.     BSR    lbC001C7A
  1816.     MOVE.L    (SP)+,D0
  1817.     RTS
  1818.  
  1819. lbC001A1A    MOVE.L    #$FFFFFFF3,D0
  1820.     MOVE.W    #$64,$3FF20
  1821.     BSR    lbC001422
  1822.     MOVE.W    $3FF1C,-(SP)
  1823.     MOVE.W    D0,-(SP)
  1824.     MOVE.L    $404.w,A0
  1825.     JSR    (A0)
  1826.     ADDQ.L    #4,SP
  1827.     MOVE.L    D0,-(SP)
  1828.     BSR    lbC00136E
  1829.     MOVE.L    (SP)+,D0
  1830.     CMP.L    #$10000,D0
  1831.     BNE.S    lbC001A50
  1832.     JMP    (A6)
  1833.  
  1834. lbC001A50    MOVE.W    #$FFFF,temp1
  1835.     MOVE.L    #$FFFFFFF3,D0
  1836.     RTS
  1837.  
  1838. lbC001A60    MOVE.L    #$FFFFFFEF,D0
  1839.     RTS
  1840.  
  1841. lbC001A68    LEA    lbC001A68(PC),A6
  1842.     LEA    $38004,A1
  1843.     MOVEQ    #14,D0
  1844. lbC001A74    MOVE.L    #gap4,(A1)+
  1845.     DBRA    D0,lbC001A74
  1846.  
  1847.     MOVEQ    #1,D1
  1848. lbC001A80    MOVEQ    #2,D0
  1849. lbC001A82    CLR.L    (A1)+
  1850.     DBRA    D0,lbC001A82
  1851.  
  1852.     MOVE.L    #$A1A1A1FE,(A1)+
  1853.     MOVE.B    $3FF27,(A1)+
  1854.     MOVE.B    $3FF25,(A1)+
  1855.     MOVE.B    D1,(A1)+
  1856.     MOVE.B    #2,(A1)+
  1857.     MOVEM.L    D2/D6/D7/A1,-(SP)
  1858.     SUBQ.L    #8,A1
  1859.     MOVEQ    #-$1,D6
  1860.     MOVEQ    #-$1,D7
  1861.     MOVEQ    #7,D2
  1862.     BSR    lbC001E0A
  1863.     MOVE.B    D6,(A1)+
  1864.     MOVE.B    D7,(A1)+
  1865.     MOVEM.L    (SP)+,D2/D6/D7/A1
  1866.     ADDQ.L    #2,A1
  1867.     MOVEQ    #10,D0
  1868. lbC001ABC    MOVE.W    #gap2,(A1)+
  1869.     DBRA    D0,lbC001ABC
  1870.  
  1871.     MOVEQ    #2,D0
  1872. lbC001AC6    CLR.L    (A1)+
  1873.     DBRA    D0,lbC001AC6
  1874.  
  1875.     MOVE.L    #$A1A1A1FB,(A1)+
  1876.     MOVE.L    #$FF,D0
  1877. lbC001AD8    MOVE.W    $3FF30,(A1)+
  1878.     DBRA    D0,lbC001AD8
  1879.  
  1880.     MOVEM.L    D2/D6/D7/A1,-(SP)
  1881.     SUB.L    #$204,A1
  1882.     MOVEQ    #-$1,D6
  1883.     MOVEQ    #-$1,D7
  1884.     MOVE.L    #$203,D2
  1885.     BSR    lbC001E0A
  1886.     MOVE.B    D6,(A1)+
  1887.     MOVE.B    D7,(A1)+
  1888.     MOVEM.L    (SP)+,D2/D6/D7/A1
  1889.     ADDQ.L    #2,A1
  1890.     MOVEQ    #9,D0
  1891. lbC001B06    MOVE.L    #gap4,(A1)+
  1892.     DBRA    D0,lbC001B06
  1893.  
  1894.     ADDQ.L    #1,D1
  1895.     MOVE.W    $3FF32,D2
  1896.     ADD.W    #1,D2
  1897.     CMP.B    D2,D1
  1898.     BNE    lbC001A80
  1899.     LEA    $39A04,A0
  1900. lbC001B28    MOVE.L    #gap4,(A1)+
  1901.     CMP.L    A0,A1
  1902.     BLT.S    lbC001B28
  1903.     LEA    $3B404,A1
  1904.     LEA    $39A04,A0
  1905.     LEA    lbW00226A,A2
  1906.     MOVE.L    #$19FF,D1
  1907. lbC001B4C    MOVEQ    #0,D0
  1908.     MOVE.B    -(A0),D0
  1909.     ADD.W    D0,D0
  1910.     MOVE.W    0(A2,D0.W),D0
  1911.     MOVE.W    D0,-(A1)
  1912.     DBRA    D1,lbC001B4C
  1913.  
  1914.     LEA    $38004,A0
  1915.     MOVE.L    #$3400,D6
  1916.     JSR    lbC001D4A
  1917.     LEA    $3807C,A0
  1918.     MOVEQ    #0,D0
  1919.     MOVE.W    $3FF32,D0
  1920.     SUBQ.L    #1,D0
  1921. lbC001B7E    ADD.L    #$18,A0
  1922.     MOVE.W    #sync,(A0)+
  1923.     MOVE.W    #sync,(A0)+
  1924.     MOVE.W    #sync,(A0)+
  1925.     ADD.L    #$52,A0
  1926.     MOVE.W    #sync,(A0)+
  1927.     MOVE.W    #sync,(A0)+
  1928.     MOVE.W    #sync,(A0)+
  1929.     ADD.L    #$456,A0
  1930.     DBRA    D0,lbC001B7E
  1931.  
  1932.     BSR    lbC001CCA
  1933.     MOVE.L    #$A88,D7
  1934.     BSR    lbC001CC0
  1935.     BTST    #2,$BFE001
  1936.     BEQ    lbC001A60
  1937.     BSET    #2,$BFD100
  1938.     TST.W    $3FF24
  1939.     BEQ.S    lbC001BDE
  1940.     BCLR    #2,$BFD100
  1941. lbC001BDE    BTST    #3,$BFE001
  1942.     BEQ    lbC001A1A
  1943.     MOVE.W    #2,_custom+intreq
  1944.     MOVE.L    #dsk,_custom+dskpth
  1945.     MOVE.W    #$7F00,_custom+adkcon
  1946.     MOVE.W    #$8100,_custom+adkcon
  1947.     MOVE.W    #$8210,_custom+dmacon
  1948.     MOVE.W    #dsksize,_custom+dsklen
  1949.     BSR.S    lbC001C9C
  1950.     MOVE.W    #$D86A,_custom+dsklen
  1951.     MOVE.W    #$D86A,_custom+dsklen
  1952.     BSR    lbC001D20
  1953.     MOVE.W    #dsksize,_custom+dsklen
  1954.     MOVE.W    $3FF22,D1
  1955.     MOVE.W    temp1,D0
  1956.     CMP.W    D0,D1
  1957.     BNE.S    lbC001C56
  1958.     MOVE.W    #$FFFF,temp1
  1959. lbC001C56    MOVEQ    #0,D0
  1960.     RTS
  1961.  
  1962. lbC001C5A    MOVE.L    D0,-(SP)
  1963.     MOVE.W    #$FFF,D0
  1964. lbC001C60    MOVE.W    _custom+vhposr,_custom+color2
  1965.     DBRA    D0,lbC001C60
  1966.  
  1967.     MOVE.W    #foreground,_custom+color2
  1968.     MOVE.L    (SP)+,D0
  1969.     RTS
  1970.  
  1971. lbC001C7A    MOVEM.L    D0/D1,-(SP)
  1972.     MOVE.L    #$7FFF,D1
  1973. lbC001C84    MOVE.W    D0,_custom+color0
  1974.     DBRA    D1,lbC001C84
  1975.  
  1976.     MOVE.W    #$666,_custom+color0
  1977.     MOVEM.L    (SP)+,D0/D1
  1978.     RTS
  1979.  
  1980. lbC001C9C    MOVE.B    #$20,$BFDD00
  1981.     BTST    #4,$BFDD00
  1982.     BNE.S    lbC001C9C
  1983.     MOVE.W    #$7D00,D0
  1984. lbC001CB2    BTST    #4,$BFDD00
  1985.     DBNE    D0,lbC001CB2
  1986.  
  1987.     RTS
  1988.  
  1989. lbC001CC0    SUB.L    #1,D7
  1990.     BNE.S    lbC001CC0
  1991.     RTS
  1992.  
  1993. lbC001CCA    MOVE.W    $3FF22,D0
  1994.     LEA    $3FF34,A0
  1995.     LEA    0(A0,D0.W),A0
  1996. lbC001CDA    MOVE.W    $3FF26,D1
  1997.     BSET    #1,$BFD100
  1998.     CMP.B    (A0),D1
  1999.     BEQ    lbC0014F0
  2000.     BLS.S    lbC001CFA
  2001.     BCLR    #1,$BFD100
  2002.     ADDQ.B    #2,(A0)
  2003. lbC001CFA    SUBQ.B    #1,(A0)
  2004.     BCLR    #0,$BFD100
  2005.     NOP
  2006.     NOP
  2007.     NOP
  2008.     NOP
  2009.     BSET    #0,$BFD100
  2010.     MOVE.L    #$A88,D7
  2011.     BSR.S    lbC001CC0
  2012.     BRA.S    lbC001CDA
  2013.  
  2014. lbC001D20    MOVE.L    #timeout,D7
  2015. lbC001D26    MOVE.W    _custom+intreqr,D0
  2016.     BTST    #1,D0
  2017.     BNE.S    lbC001D3E
  2018.     SUBQ.L    #1,D7
  2019.     BNE.S    lbC001D26
  2020.     MOVE.L    #$FFFFFFFF,D0
  2021.     RTS
  2022.  
  2023. lbC001D3E    MOVE.W    #2,_custom+intreq
  2024.     MOVEQ    #0,D0
  2025.     RTS
  2026.  
  2027. lbC001D4A    MOVE.W    #$40,_custom+intreq
  2028.     MOVE.W    #$5555,_custom+bltcdat
  2029.     MOVE.L    A0,-(SP)
  2030.     ADD.L    #$40,D6
  2031.     AND.L    #$FFFFFFE0,D6
  2032.     ADD.L    D6,A0
  2033.     OR.W    #$20,D6
  2034.     SUBQ.L    #2,A0
  2035.     MOVE.L    A0,_custom+bltapth
  2036.     MOVE.W    #0,_custom+bltamod
  2037.     MOVE.W    #$FFFF,_custom+bltafwm
  2038.     MOVE.W    #$FFFF,_custom+bltalwm
  2039.     MOVE.L    A0,_custom+bltbpth
  2040.     MOVE.L    A0,_custom+bltdpth
  2041.     MOVE.W    #0,_custom+bltbmod
  2042.     MOVE.W    #0,_custom+bltdmod
  2043.     MOVE.W    #$1002,_custom+bltcon1
  2044.     MOVE.W    #$DB1,_custom+bltcon0
  2045.     MOVE.W    D6,_custom+bltsize
  2046.     BSR.S    lbC001DF4
  2047.     MOVE.L    (SP)+,A0
  2048.     MOVE.L    A0,_custom+bltapth
  2049.     MOVE.L    A0,_custom+bltbpth
  2050.     MOVE.L    A0,_custom+bltdpth
  2051.     MOVE.W    #0,_custom+bltcon1
  2052.     MOVE.W    #$1D8C,_custom+bltcon0
  2053.     MOVE.W    D6,_custom+bltsize
  2054.     BSR.S    lbC001DF4
  2055.     RTS
  2056.  
  2057. lbC001DF4    MOVE.W    _custom+intreqr,D3
  2058.     BTST    #6,D3
  2059.     BEQ.S    lbC001DF4
  2060.     MOVE.W    #$40,_custom+intreq
  2061.     RTS
  2062.  
  2063. lbC001E0A    MOVEM.L    D4/D5/A6,-(SP)
  2064.     LEA    lbW00246A,A6
  2065.     MOVE.L    A6,D4
  2066.     MOVEQ    #0,D5
  2067. lbC001E18    MOVE.B    (A1)+,D5
  2068.     MOVE.L    D4,A6
  2069.     EOR.B    D6,D5
  2070.     ADD.W    D5,A6
  2071.     MOVE.B    (A6),D6
  2072.     EOR.B    D7,D6
  2073.     MOVE.B    $100(A6),D7
  2074.     DBRA    D2,lbC001E18
  2075.  
  2076.     MOVEM.L    (SP)+,D4/D5/A6
  2077.     RTS
  2078.  
  2079. lbC001E32    MOVEM.L    D0-D3,-(SP)
  2080.     SUBQ.B    #1,lbB001EDE
  2081.     BNE    lbC001ED8
  2082.     MOVE.B    #$32,lbB001EDE
  2083.     MOVE.B    rtc,D0
  2084.     MOVE.B    rtc+2,D1
  2085.     BSR    lbC001EE0
  2086.     MOVE.B    D0,rtc
  2087.     MOVE.B    D1,rtc+2
  2088.     CMP.B    #$3C,D2
  2089.     BNE.S    lbC001ED8
  2090.     CLR.B    rtc
  2091.     CLR.B    rtc+2
  2092.     MOVE.B    rtc+4,D0
  2093.     MOVE.B    rtc+6,D1
  2094.     BSR.S    lbC001EE0
  2095.     MOVE.B    D0,rtc+4
  2096.     MOVE.B    D1,rtc+6
  2097.     CMP.B    #$3C,D2
  2098.     BNE.S    lbC001ED8
  2099.     CLR.B    rtc+4
  2100.     CLR.B    rtc+6
  2101.     MOVE.B    rtc+8,D0
  2102.     MOVE.B    rtc+10,D1
  2103.     BSR.S    lbC001EE0
  2104.     MOVE.B    D0,rtc+8
  2105.     MOVE.B    D1,rtc+10
  2106.     CMP.B    #$19,D2
  2107.     BNE.S    lbC001ED8
  2108.     CLR.B    rtc+8
  2109.     CLR.B    rtc+10
  2110. lbC001ED8    MOVEM.L    (SP)+,D0-D3
  2111.     RTS
  2112.  
  2113. lbB001EDE    dc.b    $32
  2114.     dc.b    0
  2115.  
  2116. lbC001EE0    LSL.B    #4,D1
  2117.     OR.B    D1,D0
  2118.     ADDQ.B    #1,D0
  2119.     MOVE.B    D0,D1
  2120.     MOVE.B    D0,D2
  2121.     LSR.B    #4,D1
  2122.     AND.B    #15,D0
  2123.     RTS
  2124.  
  2125. GETTIME    MOVEQ    #0,D0
  2126.     MOVEQ    #0,D1
  2127.     MOVEQ    #0,D2
  2128.     MOVE.B    rtc+14,D1
  2129.     MOVE.B    rtc+16,D2
  2130.     LSL.B    #4,D2
  2131.     OR.B    D2,D1
  2132.     AND.L    #$1F,D1
  2133.     OR.W    D1,D0
  2134.     MOVE.B    rtc+18,D1
  2135.     MOVE.B    rtc+20,D2
  2136.     LSL.B    #4,D2
  2137.     OR.B    D2,D1
  2138.     AND.L    #15,D1
  2139.     LSL.L    #5,D1
  2140.     OR.W    D1,D0
  2141.     MOVE.B    rtc+22,D1
  2142.     MOVE.B    rtc+24,D2
  2143.     LSL.B    #4,D2
  2144.     OR.B    D2,D1
  2145.     AND.L    #$7F,D1
  2146.     LSL.L    #8,D1
  2147.     LSL.L    #1,D1
  2148.     OR.W    D1,D0
  2149.     SWAP    D0
  2150.     MOVE.B    rtc,D1
  2151.     MOVE.B    rtc+2,D2
  2152.     LSL.B    #4,D2
  2153.     OR.B    D2,D1
  2154.     LSR.B    #1,D1
  2155.     AND.L    #$1F,D1
  2156.     OR.W    D1,D0
  2157.     MOVE.B    rtc+4,D1
  2158.     MOVE.B    rtc+6,D2
  2159.     LSL.B    #4,D2
  2160.     OR.B    D2,D1
  2161.     AND.L    #$3F,D1
  2162.     LSL.L    #5,D1
  2163.     OR.W    D1,D0
  2164.     MOVE.B    rtc+8,D1
  2165.     MOVE.B    rtc+10,D2
  2166.     LSL.B    #4,D2
  2167.     OR.B    D2,D1
  2168.     AND.L    #$1F,D1
  2169.     LSL.L    #8,D1
  2170.     LSL.L    #3,D1
  2171.     OR.W    D1,D0
  2172.     MOVEQ    #0,D1
  2173.     MOVEQ    #0,D2
  2174.     RTS
  2175.  
  2176. SETTIME    MOVE.L    4(SP),D0
  2177.     CMP.W    #2,D0
  2178.     BGE.S    lbC001FAE
  2179.     BRA.S    lbC002014
  2180.  
  2181. lbC001FAE    MOVE.L    D0,D1
  2182.     AND.L    #$1F,D1
  2183.     MOVE.L    D1,D2
  2184.     LSR.B    #4,D2
  2185.     AND.B    #15,D1
  2186.     AND.B    #15,D2
  2187.     MOVE.B    D1,rtc
  2188.     MOVE.B    D2,rtc+2
  2189.     MOVE.L    D0,D1
  2190.     LSR.L    #5,D1
  2191.     AND.L    #$3F,D1
  2192.     MOVE.L    D1,D2
  2193.     LSR.B    #4,D2
  2194.     AND.B    #15,D1
  2195.     AND.B    #15,D2
  2196.     MOVE.B    D1,rtc+4
  2197.     MOVE.B    D2,rtc+6
  2198.     MOVE.L    D0,D1
  2199.     LSR.L    #8,D1
  2200.     LSR.L    #3,D1
  2201.     AND.L    #$1F,D1
  2202.     MOVE.L    D1,D2
  2203.     LSR.B    #4,D2
  2204.     AND.B    #15,D1
  2205.     AND.B    #15,D2
  2206.     MOVE.B    D1,rtc+8
  2207.     MOVE.B    D2,rtc+10
  2208. lbC002014    SWAP    D0
  2209.     MOVE.W    D0,D1
  2210.     AND.L    #$1F,D1
  2211.     MOVE.L    D1,D2
  2212.     LSR.B    #4,D2
  2213.     MOVE.B    D1,rtc+14
  2214.     MOVE.B    D2,rtc+16
  2215.     MOVE.L    D0,D1
  2216.     LSR.L    #5,D1
  2217.     AND.L    #15,D1
  2218.     MOVE.L    D1,D2
  2219.     LSR.B    #4,D2
  2220.     MOVE.B    D1,rtc+18
  2221.     MOVE.B    D2,rtc+20
  2222.     MOVE.L    D0,D1
  2223.     LSR.L    #8,D1
  2224.     LSR.L    #1,D1
  2225.     AND.L    #$7F,D1
  2226.     MOVE.L    D1,D2
  2227.     LSR.B    #4,D2
  2228.     MOVE.B    D1,rtc+22
  2229.     MOVE.B    D2,rtc+24
  2230.     MOVEQ    #0,D1
  2231.     MOVEQ    #0,D2
  2232.     RTS
  2233.  
  2234. lbL00206A    dc.l    $100010
  2235.     dc.l    $20302030
  2236.     dc.l    $100010
  2237.     dc.l    $20302030
  2238.     dc.l    $40504050
  2239.     dc.l    $60706070
  2240.     dc.l    $40504050
  2241.     dc.l    $60706070
  2242.     dc.l    $100010
  2243.     dc.l    $20302030
  2244.     dc.l    $100010
  2245.     dc.l    $20302030
  2246.     dc.l    $40504050
  2247.     dc.l    $60706070
  2248.     dc.l    $40504050
  2249.     dc.l    $60706070
  2250.     dc.l    $80908090
  2251.     dc.l    $A0B0A0B0
  2252.     dc.l    $80908090
  2253.     dc.l    $A0B0A0B0
  2254.     dc.l    $C0D0C0D0
  2255.     dc.l    $E0F0E0F0
  2256.     dc.l    $C0D0C0D0
  2257.     dc.l    $E0F0E0F0
  2258.     dc.l    $80908090
  2259.     dc.l    $A0B0A0B0
  2260.     dc.l    $80908090
  2261.     dc.l    $A0B0A0B0
  2262.     dc.l    $C0D0C0D0
  2263.     dc.l    $E0F0E0F0
  2264.     dc.l    $C0D0C0D0
  2265.     dc.l    $E0F0E0F0
  2266.     dc.l    $100010
  2267.     dc.l    $20302030
  2268.     dc.l    $100010
  2269.     dc.l    $20302030
  2270.     dc.l    $40504050
  2271.     dc.l    $60706070
  2272.     dc.l    $40504050
  2273.     dc.l    $60706070
  2274.     dc.l    $100010
  2275.     dc.l    $20302030
  2276.     dc.l    $100010
  2277.     dc.l    $20302030
  2278.     dc.l    $40504050
  2279.     dc.l    $60706070
  2280.     dc.l    $40504050
  2281.     dc.l    $60706070
  2282.     dc.l    $80908090
  2283.     dc.l    $A0B0A0B0
  2284.     dc.l    $80908090
  2285.     dc.l    $A0B0A0B0
  2286.     dc.l    $C0D0C0D0
  2287.     dc.l    $E0F0E0F0
  2288.     dc.l    $C0D0C0D0
  2289.     dc.l    $E0F0E0F0
  2290.     dc.l    $80908090
  2291.     dc.l    $A0B0A0B0
  2292.     dc.l    $80908090
  2293.     dc.l    $A0B0A0B0
  2294.     dc.l    $C0D0C0D0
  2295.     dc.l    $E0F0E0F0
  2296.     dc.l    $C0D0C0D0
  2297.     dc.l    $E0F0E0F0
  2298. lbW00216A    dcb.w    2,1
  2299.     dcb.w    2,$203
  2300.     dcb.w    2,1
  2301.     dcb.w    2,$203
  2302.     dcb.w    2,$405
  2303.     dcb.w    2,$607
  2304.     dcb.w    2,$405
  2305.     dcb.w    2,$607
  2306.     dcb.w    2,1
  2307.     dcb.w    2,$203
  2308.     dcb.w    2,1
  2309.     dcb.w    2,$203
  2310.     dcb.w    2,$405
  2311.     dcb.w    2,$607
  2312.     dcb.w    2,$405
  2313.     dcb.w    2,$607
  2314.     dcb.w    2,$809
  2315.     dcb.w    2,$A0B
  2316.     dcb.w    2,$809
  2317.     dcb.w    2,$A0B
  2318.     dcb.w    2,$C0D
  2319.     dcb.w    2,$E0F
  2320.     dcb.w    2,$C0D
  2321.     dcb.w    2,$E0F
  2322.     dcb.w    2,$809
  2323.     dcb.w    2,$A0B
  2324.     dcb.w    2,$809
  2325.     dcb.w    2,$A0B
  2326.     dcb.w    2,$C0D
  2327.     dcb.w    2,$E0F
  2328.     dcb.w    2,$C0D
  2329.     dcb.w    2,$E0F
  2330.     dcb.w    2,1
  2331.     dcb.w    2,$203
  2332.     dcb.w    2,1
  2333.     dcb.w    2,$203
  2334.     dcb.w    2,$405
  2335.     dcb.w    2,$607
  2336.     dcb.w    2,$405
  2337.     dcb.w    2,$607
  2338.     dcb.w    2,1
  2339.     dcb.w    2,$203
  2340.     dcb.w    2,1
  2341.     dcb.w    2,$203
  2342.     dcb.w    2,$405
  2343.     dcb.w    2,$607
  2344.     dcb.w    2,$405
  2345.     dcb.w    2,$607
  2346.     dcb.w    2,$809
  2347.     dcb.w    2,$A0B
  2348.     dcb.w    2,$809
  2349.     dcb.w    2,$A0B
  2350.     dcb.w    2,$C0D
  2351.     dcb.w    2,$E0F
  2352.     dcb.w    2,$C0D
  2353.     dcb.w    2,$E0F
  2354.     dcb.w    2,$809
  2355.     dcb.w    2,$A0B
  2356.     dcb.w    2,$809
  2357.     dcb.w    2,$A0B
  2358.     dcb.w    2,$C0D
  2359.     dcb.w    2,$E0F
  2360.     dcb.w    2,$C0D
  2361.     dcb.w    2,$E0F
  2362. lbW00226A    dc.w    0
  2363.     dc.w    1
  2364.     dc.w    4
  2365.     dc.w    5
  2366.     dc.w    $10
  2367.     dc.w    $11
  2368.     dc.w    $14
  2369.     dc.w    $15
  2370.     dc.w    $40
  2371.     dc.w    $41
  2372.     dc.w    $44
  2373.     dc.w    $45
  2374.     dc.w    $50
  2375.     dc.w    $51
  2376.     dc.w    $54
  2377.     dc.w    $55
  2378.     dc.w    $100
  2379.     dc.w    $101
  2380.     dc.w    $104
  2381.     dc.w    $105
  2382.     dc.w    $110
  2383.     dc.w    $111
  2384.     dc.w    $114
  2385.     dc.w    $115
  2386.     dc.w    $140
  2387.     dc.w    $141
  2388.     dc.w    $144
  2389.     dc.w    $145
  2390.     dc.w    $150
  2391.     dc.w    $151
  2392.     dc.w    $154
  2393.     dc.w    $155
  2394.     dc.w    $400
  2395.     dc.w    $401
  2396.     dc.w    $404
  2397.     dc.w    $405
  2398.     dc.w    $410
  2399.     dc.w    $411
  2400.     dc.w    $414
  2401.     dc.w    $415
  2402.     dc.w    $440
  2403.     dc.w    $441
  2404.     dc.w    $444
  2405.     dc.w    $445
  2406.     dc.w    $450
  2407.     dc.w    $451
  2408.     dc.w    $454
  2409.     dc.w    $455
  2410.     dc.w    $500
  2411.     dc.w    $501
  2412.     dc.w    $504
  2413.     dc.w    $505
  2414.     dc.w    $510
  2415.     dc.w    $511
  2416.     dc.w    $514
  2417.     dc.w    $515
  2418.     dc.w    $540
  2419.     dc.w    $541
  2420.     dc.w    $544
  2421.     dc.w    $545
  2422.     dc.w    $550
  2423.     dc.w    $551
  2424.     dc.w    $554
  2425.     dc.w    $555
  2426.     dc.w    $1000
  2427.     dc.w    $1001
  2428.     dc.w    $1004
  2429.     dc.w    $1005
  2430.     dc.w    $1010
  2431.     dc.w    $1011
  2432.     dc.w    $1014
  2433.     dc.w    $1015
  2434.     dc.w    $1040
  2435.     dc.w    $1041
  2436.     dc.w    $1044
  2437.     dc.w    $1045
  2438.     dc.w    $1050
  2439.     dc.w    $1051
  2440.     dc.w    $1054
  2441.     dc.w    $1055
  2442.     dc.w    $1100
  2443.     dc.w    $1101
  2444.     dc.w    $1104
  2445.     dc.w    $1105
  2446.     dc.w    $1110
  2447.     dc.w    $1111
  2448.     dc.w    $1114
  2449.     dc.w    $1115
  2450.     dc.w    $1140
  2451.     dc.w    $1141
  2452.     dc.w    $1144
  2453.     dc.w    $1145
  2454.     dc.w    $1150
  2455.     dc.w    $1151
  2456.     dc.w    $1154
  2457.     dc.w    $1155
  2458.     dc.w    $1400
  2459.     dc.w    $1401
  2460.     dc.w    $1404
  2461.     dc.w    $1405
  2462.     dc.w    $1410
  2463.     dc.w    $1411
  2464.     dc.w    $1414
  2465.     dc.w    $1415
  2466.     dc.w    $1440
  2467.     dc.w    $1441
  2468.     dc.w    $1444
  2469.     dc.w    $1445
  2470.     dc.w    $1450
  2471.     dc.w    $1451
  2472.     dc.w    $1454
  2473.     dc.w    $1455
  2474.     dc.w    $1500
  2475.     dc.w    $1501
  2476.     dc.w    $1504
  2477.     dc.w    $1505
  2478.     dc.w    $1510
  2479.     dc.w    $1511
  2480.     dc.w    $1514
  2481.     dc.w    $1515
  2482.     dc.w    $1540
  2483.     dc.w    $1541
  2484.     dc.w    $1544
  2485.     dc.w    $1545
  2486.     dc.w    $1550
  2487.     dc.w    $1551
  2488.     dc.w    $1554
  2489.     dc.w    $1555
  2490.     dc.w    $4000
  2491.     dc.w    $4001
  2492.     dc.w    $4004
  2493.     dc.w    $4005
  2494.     dc.w    $4010
  2495.     dc.w    $4011
  2496.     dc.w    $4014
  2497.     dc.w    $4015
  2498.     dc.w    $4040
  2499.     dc.w    $4041
  2500.     dc.w    $4044
  2501.     dc.w    $4045
  2502.     dc.w    $4050
  2503.     dc.w    $4051
  2504.     dc.w    $4054
  2505.     dc.w    $4055
  2506.     dc.w    $4100
  2507.     dc.w    $4101
  2508.     dc.w    $4104
  2509.     dc.w    $4105
  2510.     dc.w    $4110
  2511.     dc.w    $4111
  2512.     dc.w    $4114
  2513.     dc.w    $4115
  2514.     dc.w    $4140
  2515.     dc.w    $4141
  2516.     dc.w    $4144
  2517.     dc.w    $4145
  2518.     dc.w    $4150
  2519.     dc.w    $4151
  2520.     dc.w    $4154
  2521.     dc.w    $4155
  2522.     dc.w    $4400
  2523.     dc.w    $4401
  2524.     dc.w    $4404
  2525.     dc.w    $4405
  2526.     dc.w    $4410
  2527.     dc.w    $4411
  2528.     dc.w    $4414
  2529.     dc.w    $4415
  2530.     dc.w    $4440
  2531.     dc.w    $4441
  2532.     dc.w    $4444
  2533.     dc.w    $4445
  2534.     dc.w    $4450
  2535.     dc.w    $4451
  2536.     dc.w    $4454
  2537.     dc.w    $4455
  2538.     dc.w    $4500
  2539.     dc.w    $4501
  2540.     dc.w    $4504
  2541.     dc.w    $4505
  2542.     dc.w    $4510
  2543.     dc.w    $4511
  2544.     dc.w    $4514
  2545.     dc.w    $4515
  2546.     dc.w    $4540
  2547.     dc.w    $4541
  2548.     dc.w    $4544
  2549.     dc.w    $4545
  2550.     dc.w    $4550
  2551.     dc.w    $4551
  2552.     dc.w    $4554
  2553.     dc.w    $4555
  2554.     dc.w    $5000
  2555.     dc.w    $5001
  2556.     dc.w    $5004
  2557.     dc.w    $5005
  2558.     dc.w    $5010
  2559.     dc.w    $5011
  2560.     dc.w    $5014
  2561.     dc.w    $5015
  2562.     dc.w    $5040
  2563.     dc.w    $5041
  2564.     dc.w    $5044
  2565.     dc.w    $5045
  2566.     dc.w    $5050
  2567.     dc.w    $5051
  2568.     dc.w    $5054
  2569.     dc.w    $5055
  2570.     dc.w    $5100
  2571.     dc.w    $5101
  2572.     dc.w    $5104
  2573.     dc.w    $5105
  2574.     dc.w    $5110
  2575.     dc.w    $5111
  2576.     dc.w    $5114
  2577.     dc.w    $5115
  2578.     dc.w    $5140
  2579.     dc.w    $5141
  2580.     dc.w    $5144
  2581.     dc.w    $5145
  2582.     dc.w    $5150
  2583.     dc.w    $5151
  2584.     dc.w    $5154
  2585.     dc.w    $5155
  2586.     dc.w    $5400
  2587.     dc.w    $5401
  2588.     dc.w    $5404
  2589.     dc.w    $5405
  2590.     dc.w    $5410
  2591.     dc.w    $5411
  2592.     dc.w    $5414
  2593.     dc.w    $5415
  2594.     dc.w    $5440
  2595.     dc.w    $5441
  2596.     dc.w    $5444
  2597.     dc.w    $5445
  2598.     dc.w    $5450
  2599.     dc.w    $5451
  2600.     dc.w    $5454
  2601.     dc.w    $5455
  2602.     dc.w    $5500
  2603.     dc.w    $5501
  2604.     dc.w    $5504
  2605.     dc.w    $5505
  2606.     dc.w    $5510
  2607.     dc.w    $5511
  2608.     dc.w    $5514
  2609.     dc.w    $5515
  2610.     dc.w    $5540
  2611.     dc.w    $5541
  2612.     dc.w    $5544
  2613.     dc.w    $5545
  2614.     dc.w    $5550
  2615.     dc.w    $5551
  2616.     dc.w    $5554
  2617.     dc.w    $5555
  2618. lbW00246A    dc.w    $10
  2619.     dc.w    $2030
  2620.     dc.w    $4050
  2621.     dc.w    $6070
  2622.     dc.w    $8191
  2623.     dc.w    $A1B1
  2624.     dc.w    $C1D1
  2625.     dc.w    $E1F1
  2626.     dc.w    $1202
  2627.     dc.w    $3222
  2628.     dc.w    $5242
  2629.     dc.w    $7262
  2630.     dc.w    $9383
  2631.     dc.w    $B3A3
  2632.     dc.w    $D3C3
  2633.     dc.w    $F3E3
  2634.     dc.w    $2434
  2635.     dc.w    $414
  2636.     dc.w    $6474
  2637.     dc.w    $4454
  2638.     dc.w    $A5B5
  2639.     dc.w    $8595
  2640.     dc.w    $E5F5
  2641.     dc.w    $C5D5
  2642.     dc.w    $3626
  2643.     dc.w    $1606
  2644.     dc.w    $7666
  2645.     dc.w    $5646
  2646.     dc.w    $B7A7
  2647.     dc.w    $9787
  2648.     dc.w    $F7E7
  2649.     dc.w    $D7C7
  2650.     dc.w    $4858
  2651.     dc.w    $6878
  2652.     dc.w    $818
  2653.     dc.w    $2838
  2654.     dc.w    $C9D9
  2655.     dc.w    $E9F9
  2656.     dc.w    $8999
  2657.     dc.w    $A9B9
  2658.     dc.w    $5A4A
  2659.     dc.w    $7A6A
  2660.     dc.w    $1A0A
  2661.     dc.w    $3A2A
  2662.     dc.w    $DBCB
  2663.     dc.w    $FBEB
  2664.     dc.w    $9B8B
  2665.     dc.w    $BBAB
  2666.     dc.w    $6C7C
  2667.     dc.w    $4C5C
  2668.     dc.w    $2C3C
  2669.     dc.w    $C1C
  2670.     dc.w    $EDFD
  2671.     dc.w    $CDDD
  2672.     dc.w    $ADBD
  2673.     dc.w    $8D9D
  2674.     dc.w    $7E6E
  2675.     dc.w    $5E4E
  2676.     dc.w    $3E2E
  2677.     dc.w    $1E0E
  2678.     dc.w    $FFEF
  2679.     dc.w    $DFCF
  2680.     dc.w    $BFAF
  2681.     dc.w    $9F8F
  2682.     dc.w    $9181
  2683.     dc.w    $B1A1
  2684.     dc.w    $D1C1
  2685.     dc.w    $F1E1
  2686.     dc.w    $1000
  2687.     dc.w    $3020
  2688.     dc.w    $5040
  2689.     dc.w    $7060
  2690.     dc.w    $8393
  2691.     dc.w    $A3B3
  2692.     dc.w    $C3D3
  2693.     dc.w    $E3F3
  2694.     dc.w    $212
  2695.     dc.w    $2232
  2696.     dc.w    $4252
  2697.     dc.w    $6272
  2698.     dc.w    $B5A5
  2699.     dc.w    $9585
  2700.     dc.w    $F5E5
  2701.     dc.w    $D5C5
  2702.     dc.w    $3424
  2703.     dc.w    $1404
  2704.     dc.w    $7464
  2705.     dc.w    $5444
  2706.     dc.w    $A7B7
  2707.     dc.w    $8797
  2708.     dc.w    $E7F7
  2709.     dc.w    $C7D7
  2710.     dc.w    $2636
  2711.     dc.w    $616
  2712.     dc.w    $6676
  2713.     dc.w    $4656
  2714.     dc.w    $D9C9
  2715.     dc.w    $F9E9
  2716.     dc.w    $9989
  2717.     dc.w    $B9A9
  2718.     dc.w    $5848
  2719.     dc.w    $7868
  2720.     dc.w    $1808
  2721.     dc.w    $3828
  2722.     dc.w    $CBDB
  2723.     dc.w    $EBFB
  2724.     dc.w    $8B9B
  2725.     dc.w    $ABBB
  2726.     dc.w    $4A5A
  2727.     dc.w    $6A7A
  2728.     dc.w    $A1A
  2729.     dc.w    $2A3A
  2730.     dc.w    $FDED
  2731.     dc.w    $DDCD
  2732.     dc.w    $BDAD
  2733.     dc.w    $9D8D
  2734.     dc.w    $7C6C
  2735.     dc.w    $5C4C
  2736.     dc.w    $3C2C
  2737.     dc.w    $1C0C
  2738.     dc.w    $EFFF
  2739.     dc.w    $CFDF
  2740.     dc.w    $AFBF
  2741.     dc.w    $8F9F
  2742.     dc.w    $6E7E
  2743.     dc.w    $4E5E
  2744.     dc.w    $2E3E
  2745.     dc.w    $E1E
  2746.     dc.w    $21
  2747.     dc.w    $4263
  2748.     dc.w    $84A5
  2749.     dc.w    $C6E7
  2750.     dc.w    $829
  2751.     dc.w    $4A6B
  2752.     dc.w    $8CAD
  2753.     dc.w    $CEEF
  2754.     dc.w    $3110
  2755.     dc.w    $7352
  2756.     dc.w    $B594
  2757.     dc.w    $F7D6
  2758.     dc.w    $3918
  2759.     dc.w    $7B5A
  2760.     dc.w    $BD9C
  2761.     dc.w    $FFDE
  2762.     dc.w    $6243
  2763.     dc.w    $2001
  2764.     dc.w    $E6C7
  2765.     dc.w    $A485
  2766.     dc.w    $6A4B
  2767.     dc.w    $2809
  2768.     dc.w    $EECF
  2769.     dc.w    $AC8D
  2770.     dc.w    $5372
  2771.     dc.w    $1130
  2772.     dc.w    $D7F6
  2773.     dc.w    $95B4
  2774.     dc.w    $5B7A
  2775.     dc.w    $1938
  2776.     dc.w    $DFFE
  2777.     dc.w    $9DBC
  2778.     dc.w    $C4E5
  2779.     dc.w    $86A7
  2780.     dc.w    $4061
  2781.     dc.w    $223
  2782.     dc.w    $CCED
  2783.     dc.w    $8EAF
  2784.     dc.w    $4869
  2785.     dc.w    $A2B
  2786.     dc.w    $F5D4
  2787.     dc.w    $B796
  2788.     dc.w    $7150
  2789.     dc.w    $3312
  2790.     dc.w    $FDDC
  2791.     dc.w    $BF9E
  2792.     dc.w    $7958
  2793.     dc.w    $3B1A
  2794.     dc.w    $A687
  2795.     dc.w    $E4C5
  2796.     dc.w    $2203
  2797.     dc.w    $6041
  2798.     dc.w    $AE8F
  2799.     dc.w    $ECCD
  2800.     dc.w    $2A0B
  2801.     dc.w    $6849
  2802.     dc.w    $97B6
  2803.     dc.w    $D5F4
  2804.     dc.w    $1332
  2805.     dc.w    $5170
  2806.     dc.w    $9FBE
  2807.     dc.w    $DDFC
  2808.     dc.w    $1B3A
  2809.     dc.w    $5978
  2810.     dc.w    $88A9
  2811.     dc.w    $CAEB
  2812.     dc.w    $C2D
  2813.     dc.w    $4E6F
  2814.     dc.w    $80A1
  2815.     dc.w    $C2E3
  2816.     dc.w    $425
  2817.     dc.w    $4667
  2818.     dc.w    $B998
  2819.     dc.w    $FBDA
  2820.     dc.w    $3D1C
  2821.     dc.w    $7F5E
  2822.     dc.w    $B190
  2823.     dc.w    $F3D2
  2824.     dc.w    $3514
  2825.     dc.w    $7756
  2826.     dc.w    $EACB
  2827.     dc.w    $A889
  2828.     dc.w    $6E4F
  2829.     dc.w    $2C0D
  2830.     dc.w    $E2C3
  2831.     dc.w    $A081
  2832.     dc.w    $6647
  2833.     dc.w    $2405
  2834.     dc.w    $DBFA
  2835.     dc.w    $99B8
  2836.     dc.w    $5F7E
  2837.     dc.w    $1D3C
  2838.     dc.w    $D3F2
  2839.     dc.w    $91B0
  2840.     dc.w    $5776
  2841.     dc.w    $1534
  2842.     dc.l    $4C6D0E2F
  2843.     dc.l    $C8E98AAB
  2844.     dc.l    $44650627
  2845.     dc.l    $C0E182A3
  2846.     dc.l    $7D5C3F1E
  2847.     dc.l    $F9D8BB9A
  2848.     dc.l    $75543716
  2849.     dc.l    $F1D0B392
  2850.     dc.l    $2E0F6C4D
  2851.     dc.l    $AA8BE8C9
  2852.     dc.l    $26076445
  2853.     dc.l    $A283E0C1
  2854.     dc.l    $1F3E5D7C
  2855.     dc.l    $9BBAD9F8
  2856.     dc.l    $17365574
  2857.     dc.l    $93B2D1F0
  2858.     dc.l    $1234
  2859.     dc.l    $56780000
  2860.     dcb.l    $40,0
  2861.     dcb.l    $40,0
  2862.     dcb.l    $40,0
  2863.     dcb.l    $40,0
  2864.     dcb.l    $40,0
  2865.     dcb.l    $23,0
  2866.     dcb.b    3,0
  2867.